ipentry(3) An IP address entry widget


package require Tcl 8.4

package require Tk 8.4

package require ipentry ?0.3?

::ipentry::ipentry pathName ?option value...?

::ipentry::ipentry6 pathName ?option value...?

pathName complete

pathName get

pathName insert iplist

pathName icursor index

pathName configure option value...

pathName cget option


This package provides a widget for the entering of a IP address.

::ipentry::ipentry pathName ?option value...?
Creates a new IPv4 ipentry widget and configures it with the given options and their values.
::ipentry::ipentry6 pathName ?option value...?
Creates a new ipentry widget for the entry of an IPv6 address. All options are the same as the IPv4 widget.

Each widget created with the command above supports the following methods:

pathName complete
Returns a boolean value. True indicates that the entry contains a complete IP address, meaning all fields have a value. In some cases IPv6 address are valid when fields are missing. You will need to do your own validation to detect this.
pathName get
Returns the contents of the entry as a list consisting of 4 or 8 elements.
pathName insert iplist
IPv4 Takes a list of 4 elements and inserts one into each quad of the entry, in order. All values in the list must be empty or integers. Values outside the range 0 to 255 are modified to be within the range. IPv6 Takes a list of 8 elements and inserts one into each quad of the entry, in order. All values in the list must be empty or 1 to 4 hex digits.
pathName icursor index
Sets the position of the widgets insertion cursor. Only integer values between 0 and 15 are valid for ipentry and 0 to 31 for ipentry6. Setting the icursor will only have an effect if the widget already has the input focus.
pathName configure option value...
Modifies the configuration of the widget. For options and their meaning see the widget options section.
pathName cget option
Returns information about the current configuration of the widget, for the specified option. For options and their meaning see the widget options section.


Command-Line Switch:-textvariable
Database Name:textvariable
Database Class:Variable

The name of a variable which holds the value of the IP address. The value must be a string of the form NNN.NNN.NNN.NNN for IPv4 or HHHH:HHHH:HHHH:HHHH:HHHH:HHHH:HHHH:HHHH for IPv6 where H is a hex digit. The variable will be modified to represent a valid IP address if it is not already.

Command-Line Switch:-state
Database Name:state
Database Class:State

Specifies one of three states for the entry: normal, disabled, or readonly.

Command-Line Switch:-font
Database Name:font
Database Class:Font

Command-Line Switch:-bd
Database Name:borderWidth
Database Class:BorderWidth

Command-Line Switch:-fg
Database Name:foreground
Database Class:Foreground

Command-Line Switch:-bg
Database Name:background
Database Class:Background

Command-Line Switch:-relief
Database Name:relief
Database Class:Relief

Command-Line Switch:-highlightthickness
Database Name:highlightThickness
Database Class:HighlightThickness

Command-Line Switch:-highlightcolor
Database Name:highlightColor
Database Class:HighlightColor

Command-Line Switch:-highlightbackground
Database Name:highlightBackground
Database Class:HighlightBackground

Command-Line Switch:-selectbackground
Database Name:selectBackground
Database Class:Background

Command-Line Switch:-selectforeground
Database Name:selectForeground
Database Class:Foreground

Command-Line Switch:-selectborderwidth
Database Name:selectBorderWidth
Database Class:BorderWidth

Command-Line Switch:-disabledbackground
Database Name:disabledBackground
Database Class:DisabledBackground

Command-Line Switch:-disabledforeground
Database Name:disabledForeground
Database Class:DisabledForeground

Command-Line Switch:-readonlybackground
Database Name:readonlyBackground
Database Class:ReadonlyBackground

Command-Line Switch:-insertbackground
Database Name:insertBackground
Database Class:Background

Standard widget options. See options for a description of their meanings and values.


entry, ip address, network