Scroll to navigation

selection(3tk) Tk Built-In Commands selection(3tk)


NAME

selection - 操縱 X 選擇

總覽 SYNOPSIS

selection option ?arg arg ...?

描述 DESCRIPTION

這個命令提供到 X 選擇機制的一個 Tcl 接口並實現了在 X 客戶間通信協定手冊(ICCCM)中描述全部選擇功能。

selection 的第一個參數決定餘下的參數的格式和命令的行爲。當前支持下列形式:

selection clear ?-displayof window? ?-selection selection?
如果 selection 存在於 window 的顯示器上的某個地方,則清除它這樣就沒有任何窗口擁有這個選擇了。Selection 指定應該清除的 X 選擇,並且應當是一個原子的名字如 PRIMARY 或 CLIPBOARD;詳情請參見 X 客戶間通信協定手冊。Selection 缺省爲 PRIMARY 而 window 缺省爲“.”。返回一個空串。
selection get ?-displayof window? ?-selection selection? ?-type type?
window 的顯示器取回 selection 的值並把它作爲結果返回。Selection 缺省爲 PRIMARY 而 window 缺省爲“.”。Type 指定返回選擇用的形式(用 ICCCM 術語是想要的轉換的“目標”),並且應當是一個原子的名字如 STRING 或 FILE_NAME; 詳情請參見 X 客戶間通信協定手冊。Type 缺省爲 STRING。選擇擁有者可以在多種不同的表示格式中挑選返回選擇(的格式),比如 STRING、ATOM、INTEGER 等。(這個格式不同與選擇類型,如有混淆請參見 ICCCM)。如果以非字符串格式返回選擇。比如 INTEGER 或 ATOM,selection 命令把它轉換字符串格式,即一組用空格分隔的字段: 把原子轉換成他們的文字名字,把其他任何東西都轉換成十六進制整數。
selection handle ?-selection selection? ?-type type? ?-format format? window command
爲選擇請求建立一個處理器(handler),這樣當 window 擁有 selection 並且有人嘗試以用 type (比方說在 selection get 命令中指定了 type)給出的形式取回它的時候,則執行 commandSelection 缺省爲 PRIMARY,type 缺省爲STRING,而 format 缺省爲 STRING。如果 command 是一個空串,則刪除針對 windowtypeselection 的所有處理器。

在要求 selection 的時候,window 是選擇的所有者,而 type 是要求的類型,把 command 作爲一個 Tcl 腳本來執行,並向它添加了兩個補充的數(帶有空格分隔符)。這兩個補充的數 是 offsetmaxChars: offset 指定在選擇中的開始位置而 maxChars 給出要取回的字符的最大數目。這個命令應該返回一個值,它由選擇的最多 maxChars 字符組成,開始於位置 offset。對於非常大的選擇(大於 maxChars),使用遞增 offset 值的多次 command 調用來取回選擇。如果 command 返回其長度小於 maxChars 的一個字符串,則假定返回值包含選擇的全部餘下部分;如果 command 的結果的長度等於 maxChars 則將再次調用 command ,知道最終返回小於 maxChars 的一個結果。maxChars 總是相對的大(成千個字符)。

如果 command 返回一個錯誤,則丟棄取回的選擇,如同選擇根本不存在。

format 參數指定用來把選擇傳輸(transmit)到請求者的表示法(ICCCM 的表 2 的第二列),並且缺省爲 STRING。如果 format 是 STRING,則把選擇傳輸爲 8-bit ASCII 字符。如果 format 是 ATOM,則把 data 分割爲用白空格分隔的字段;把每個字段轉換成它的原子值,傳輸 32-bit 原子值而不是原子的名字。對於任何其他的 format,把 data 分割爲用白空格分隔的字段;把每個字段轉換成一個 32-bit 整數;向選擇的請求者傳輸一個整數的數組。

format 參數只在與不使用 Tk 的請求者相兼容時需要。如果使用 Tk 工具箱來取回 CLIPBOARD 選擇,則在請求端把這個值轉換回一個字符串,所以 format 是無關的(irrelevant)。

selection own ?-displayof window? ?-selection selection?
selection own ?-command command? ?-selection selection? window
第一種形式的 selection own 返回在這個應用中的一個窗口路徑名字的名字,這個窗口擁有在容納 window 的顯示器上的 selection,如果在這個應用種沒有窗口擁有這個選擇就返回一個空串。Selection defaults to PRIMARY and window defaults to ``.''.

selection own 的第二種形式導致 window 成爲在 window 的顯示器上的 selection 的新擁有者,它返回一個空串作爲結果。通知現存的擁有者(如果有的話)它已經失去了這個選擇。如果指定了command,在其他一些窗口向 window 索取(claim)這個選擇的所有權的時候,執行這個Tcl 腳本。Selection 缺省爲 PRIMARY。

關鍵字 KEYWORDS

clear, format, handler, ICCCM, own, selection, target, type

[中文版維護人]

寒蟬退士

[中文版最新更新]

2002/05/27

《中國 Linux 論壇 man 手冊頁翻譯計劃》:

http://cmpp.linuxforum.net

本頁面中文版由中文 man 手冊頁計劃提供。
中文 man 手冊頁計劃:https://github.com/man-pages-zh/manpages-zh
8.1 Tk