## Tcl8.6.17/Tk8.6.17 Documentation > Tk Commands > ttk_style

### Tcl/Tk Applications | Tcl Commands | Tk Commands | [incr Tcl] Package Commands | SQLite3 Package Commands | TDBC Package Commands | tdbc::mysql Package Commands | tdbc::odbc Package Commands | tdbc::postgres Package Commands | tdbc::sqlite3 Package Commands | Thread Package Commands | Tcl C API | Tk C API | [incr Tcl] Package C API | TDBC Package C API

  NAME
    ttk::style — 操作様式基本データ Manipulate style database
  構文 SYNOPSIS
  NOTES
  定義 DEFINITIONS
  説明 DESCRIPTION
    ttk::style configure style ?-option ?value option value...? ?
    ttk::style element args
      ttk::style element create elementName type ?args...?
      ttk::style element names
      ttk::style element options element
    ttk::style layout style ?layoutSpec?
    ttk::style lookup style -option ?state ?default??
    ttk::style map style ?-option { statespec value... }?
    ttk::style theme args
      ttk::style theme create themeName ?-parent basedon? ?-settings script... ?
      ttk::style theme names
      ttk::style theme settings themeName script
      ttk::style theme use ?themeName?
  LAYOUTS
    -children { sublayout... }
    -expand boolean
    -side side
    -sticky [nswe]
  SEE ALSO
  KEYWORDS

### NAME

ttk::style — 操作様式基本データ Manipulate style database

### 構文 SYNOPSIS

ttk::style option ?args?

### NOTES

Tcl'2004 会議の発表をも参照されたい､ http://tktable.sourceforge.net/tile/tile-tcl2004.pdf が利用可能である｡ See also the Tcl'2004 conference presentation, available at https://tktable.sourceforge.net/tile/tile-tcl2004.pdf

### 定義 DEFINITIONS

それぞれの部品は style が代入される､それは部品を作り上げる要素の組と､動的に亦､要素の指示項目の為の省略時設定に従って如何にそれを配置するかを指定する｡省略時設定により､その様式の名前は部品の級と同じである; これは -style 指示項目により上書きされ得る｡ Each widget is assigned a style, which specifies the set of elements making up the widget and how they are arranged, along with dynamic and default settings for element options. By default, the style name is the same as the widget's class; this may be overridden by the -style option.

主題は要素と様式の集合であり､応用譜の全体の見栄えと印象を制御する｡ A theme is a collection of elements and styles which controls the overall look and feel of an application.

### 説明 DESCRIPTION

ttk::style 命令は次の引数を取る [譯註: 詳細は https://wiki.tcl-lang.org/page/ttk%3A%3Astyle+examples#pagetoc6c5fce3b]: 　　 The ttk::style command takes the following arguments:

ttk::style configure style ?-option ?value option value...? ?
  style 内の指定された指示項目の省略時設定値を設定する｡ Sets the default value of the specified option(s) in style.

ttk::style element args

  ttk::style element create elementName type ?args...?
    型 type の現在の主題の中に新しい要素を創生する｡OSに依存しない組込み要素の唯一の型は影像(ttk_image(n) 参照)であるが､主題は他の要素の型(Ttk_RegisterElementFactory 参照)を定義できる｡Windows の適正な版では要素作成譜は Windows の主題要素を創生する為に登録される(ttk_vsapi(n) 参照)｡ Creates a new element in the current theme of type type. The only cross-platform built-in element type is image (see ttk_image(n)) but themes may define other element types (see Ttk_RegisterElementFactory). On suitable versions of Windows an element factory is registered to create Windows theme elements (see ttk_vsapi(n)).

  ttk::style element names
    現在の主題の中に定義された型のリストを返す｡ Returns the list of elements defined in the current theme.

  ttk::style element options element
    要素の指示項目のリストを返す｡ Returns the list of element's options.

ttk::style layout style ?layoutSpec?
  型 type の為の部品並びを定義する｡ layoutSpec 書式について下の LAYOUTS を参照されたい｡もし layoutSpec が省略されると型 type の為の並びの仕様を返す｡ Define the widget layout for style style. See LAYOUTS below for the format of layoutSpec. If layoutSpec is omitted, return the layout specification for style style.

ttk::style lookup style -option ?state ?default??
  要素指示項目の為の標準の捜索規則を使い､状態 state の中の型 style の中の -option の為に指定された値を返す｡ state は状態の名前のリストである; もし省略されると､全てのビットが断 ( “通常” 状態)になる｡もし default 引数が存在すると -option の為の仕様が見付らない場合の予備値として使われる｡ Returns the value specified for -option in style style in state state, using the standard lookup rules for element options. state is a list of state names; if omitted, it defaults to all bits off (the “normal” state). If the default argument is present, it is used as a fallback value in case no specification for -option is found.

ttk::style map style ?-option { statespec value... }?
  型 style の中の指定された指示項目の動的値を設定する｡それぞれの 状態仕様/値 対は順に調べられる; statespec の最初の合致に対応する値が使われる｡ Sets dynamic values of the specified option(s) in style. Each statespec / value pair is examined in order; the value corresponding to the first matching statespec is used.

ttk::style theme args

  ttk::style theme create themeName ?-parent basedon? ?-settings script... ?
    新しい主題を作成する｡もし themeName が既に実在する場合は不都合である｡もし -parent が指定されている場合､新しい主題は様式と要素と配置を親の主題 basedon から相続する｡もし -settings が存在すると､ script が新しい主題の文脈の中で ttk::style theme settings の方法と同じ様に評価される｡ Creates a new theme. It is an error if themeName already exists. If -parent is specified, the new theme will inherit styles, elements, and layouts from the parent theme basedon. If -settings is present, script is evaluated in the context of the new theme as per ttk::style theme settings.

  ttk::style theme names
    全ての既知の主題のリストを返す｡ Returns a list of all known themes.

  ttk::style theme settings themeName script
    一時的に現在の主題を themeName に設定し script を評価し､次いで以前の主題に再保存する｡ script は､恣意的な Tcl 命令が混じるかもしれないが､典型的には､単に様式と要素を定義する｡ Temporarily sets the current theme to themeName, evaluate script, then restore the previous theme. Typically script simply defines styles and elements, though arbitrary Tcl code may appear.

  ttk::style theme use ?themeName?
    引数がない場合､結果は現在の主題の名前である｡それ以外の場合､この命令は現在の主題を themeName に設定し､全ての部品の刷新する｡ Without an argument the result is the name of the current theme. Otherwise this command sets the current theme to themeName, and refreshes all widgets.

### LAYOUTS

配置 layout は要素のリストを指定し､それぞれの要素は一つ以上の要素を如何に配置するかを指定する指示項目が続く｡その配置の仕掛けは pack 幾何管理譜の簡略化版が使われる: 初期状態の空洞が与えられ､それぞれの要素が区画に割当てられる｡ 配列された群の内部での要素の調整により群が実際に使用される｡ 適正な指示項目は以下の通り: A layout specifies a list of elements, each followed by one or more options specifying how to arrange the element. The layout mechanism uses a simplified version of the pack geometry manager: given an initial cavity, each element is allocated a parcel. Then the parcel actually used by the element is adjusted within the allocated parcel. Valid options are:

-children { sublayout... }
  要素内に配置される要素のリストを指定する｡ Specifies a list of elements to place inside the element.

-expand boolean
  割当てられた群が空洞を満たすか否かを指し示す｡そうであれば､連続する指定の -side は無視される｡省略時設定は 0 ｡ Specifies whether the allocated parcel is the entire cavity. If so, simultaneous specification of -side is ignored. Defaults to 0.

-side side
  要素を空洞のどの側に配置するかを指定する; left か right か top か bottom かの内の一つ｡譬えば -side top は空洞の頂に沿って､巾と高さは､それぞれ､空洞の巾と要素の高さを保持して群を配置する｡もし省略されると､配置された群は空洞を満たす( -expand 1 と同じ効果を有す)｡ Specifies which side of the cavity to place the element; one of left, right, top, or bottom. For instance, -side top allocates the parcel along the top of the cavity having width and height respectively the width of the cavity and the height of the element. If omitted, the allocated parcel is the entire cavity (same effect as -expand 1).

-sticky [nswe]
  配置された群の中の実際の群の位置を寸法を指定する｡もし空文字が指定されると､実際の群の配置された群内の中央になる｡省略時設定は nswe である｡ Specifies the actual parcel position and size inside the allocated parcel. If specified as an empty string then the actual parcel is centered in the allocated parcel. Default is nswe.

譬えば: For example:

    ttk::style layout Horizontal.TScrollbar {
        Scrollbar.trough -children {
            Scrollbar.leftarrow -side left
            Scrollbar.rightarrow -side right
            Horizontal.Scrollbar.thumb -side left -sticky ew
        }
    }

### SEE ALSO

ttk::intro, ttk::widget, photo, ttk_image

### KEYWORDS

style, theme, appearance
Copyright © 2004 Joe English