MainFrame -
管理帶有選單、工具條和狀態條的頂層視窗
MainFrame pathName ?option value...?
MainFrame 管理的頂層視窗有:
*
建立帶有自動快捷鍵繫結和動態幫助關聯的簡單選單,
*
使用者可以隱藏的一個或多個工具條,
*
顯示使用者訊息或選單描述的一個狀態條,和可選的一個進度條。
- -height
- 以 Tk_GetPixels
可接受的任何形式為使用者框架指定想要的高度。如果這個選項小於等於零(預設)則對這個視窗根本不要求任何大小。
- -menu (read-only)
- 這個選項描述選單。它是一個列表,每五個元素描述一個級聯選單。它有下列格式:
{選單名 標籤(tag)列表
選單Id 撕開項 選單項...}
這裡的選單項是一個列表,其中每個元素描述一個選單項,它們可以是:
一個分隔符: {separator}
一個命令: {command 選單名
?標籤列表? ?描述?
?快捷鍵? ?選項值? ...}
複選按鈕: {checkbutton 選單名
?標籤列表? ?描述?
?快捷鍵? ?選項值? ...}
單選按鈕: {radiobutton 選單名
?標籤列表? ?描述?
?快捷鍵? ?選項值? ...}
一個級聯選單: {cascad
選單名 ?標籤列表?
選單Id 撕開項 選單項}
這裡的:
如果選單名包含一個
&,
則把隨後的字元自動的轉換成
menu add
命令的相應的選項。
標籤列表是這個條目的所有標籤的列表,用於使用
MainFrame::setmenustate
來啟用或停用選單條目。
選單Id 是給這個選單的
id,你可以用 MainFrame::getmenu
來從它得到選單路徑名。
撕開項指定選單是否有撕開條目。
描述為動態幫助指定字串。
快捷鍵指定一個擊鍵序列。它是兩個元素的一個列表,其中的第一個元素是
Ctrl、Alt 或 CtrlAlt
之一,而第二個元素是一個字母或數字。建造一個快捷鍵字串並在頂層視窗上設定相應的繫結來呼叫選單項。
選項值為這個條目指定補充選項(參見
menu add 命令)。
被 ?
包圍的每個值都是可選的並且預設為空串,但是如果下列選項是非空則必須提供值。
- -separator (只讀)
-
指定是否把分隔線畫在使用者視窗的頂部和/或底部。必須是值
none、top、bottom 或 both 之一。
它依賴於使用者視窗的子元件的面型(relief)。
- -textvariable
- 為狀態條的標籤指定
textvariable 選項。在這個 MainFrame
的建立的時候把選單條目的動態幫助描述對映到這個變數。如果用
MainFrame::configure
變更了這個變數,選單描述將不可獲得。你可以透過修改這個變數的值來變更這個標籤的文字。
- -width
- 以 Tk_GetPixels
可接受的任何形式為使用者框架指定想要的寬度。如果這個選項小於等於零(預設)則對這個視窗根本不要求任何大小。
set descmenu {
"&File" {} {} 0 {
{command "&New" {} "建立一個新文件" {Ctrl n} -command Menu::new}
{command "&Open..." {} "開啟一個現存檔案" {Ctrl o} -command Menu::open}
{command "&Save" open "儲存這個文件" {Ctrl s} -command Menu::save}
{cascad "&Export" {} export 0 {
{command "Format &1" open "匯出文件為格式 1" {} -command {Menu::export 1}}
{command "Format &2" open "匯出文件為 2" {} -command {Menu::export 2}}
}}
{separator}
{cascad "&Recent files" {} recent 0 {}}
{separator}
{command "E&xit" {} "退出應用程式" {} -command Menu::exit}
}
"&Options" {} {} 0 {
{checkbutton "Toolbar" {} "顯示/隱藏工具欄" {}
-variable Menu::_drawtoolbar
-command {$Menu::_mainframe showtoolbar toolbar $Menu::_drawtoolbar}
}
}
}
- pathName addindicator ?arg...?
- 在狀態條的右端增加一個指示器(indicator)框。從左到右增加每個指示器。指示器是用
?arg...?
給出的選項-值配置的一個
Tk 標籤(label)元件。-relief 和
-borderwidth 選項分別預設為
sunken(凹陷) 和
1。返回建立的標籤的路徑名。
- pathName addtoolbar
- 向 MainFrame
新增一個工具條。返回在其中放置工具條的那個新視窗的路徑名。
- pathName cget option
- 返回用 option
給出的配置選項的當前值。Option
可以是能被建立命令接受的任何值。
- pathName configure ?option? ?value option value ...?
- 查詢或修改這個元件的配置選項。如果未指定
option ,則返回描述 pathName
的所有可獲得的選項的一個列表。如果指定了不帶
value 的
option,則這個命令返回描述這個指名的
option
的一個列表(這個列表與未指定
option
所返回的值的相應的子集是一樣的)。如果指定了一個或多個選項-值
對,則這個命令把給定的元件選項修改為給定的值;在這種情況下這個命令返回一個空串。Option
可以是能被建立命令接受的任何值。只讀選項不可修改。
- pathName getframe
- 返回使用者視窗的路徑名。
- pathName getindicator index
- 返回第 index
次增加的指示器。
- pathName getmenu menuid
- 返回 id 是 menuid
的選單的路徑名。
- pathName gettoolbar index
- 返回第 index
次增加的工具條的路徑名。
- pathName setmenustate tag state
- 把有標籤 tag
的所有選單項的 -state
選項的值設定成 state。
- pathName showstatusbar name
- name 是 none、status 或 progression
之一。使用 none
來隱藏狀態條,用 status
來只顯示標籤(label),或用
progression
來顯示標籤和進度條。
- pathName showtoolbar index bool
- 如果 bool 是 0
則隱藏第 index
次增加的工具條,如果
bool 是 1 則顯示第 index
次增加的工具條。要防止你的頂層視窗在隱藏/顯示工具條期間調整大小,在操縱(manage)它的時候做
[wm geometry $top [wm geometry $top]] 。
寒蟬退士
2001/05/06
http://cmpp.linuxforum.net
本頁面中文版由中文 man
手冊頁計劃提供。
中文 man 手冊頁計劃:
https://github.com/man-pages-zh/manpages-zh