1. 程式人生 > >【traits-traitsui-基礎】-02-控制元件Str/Button

【traits-traitsui-基礎】-02-控制元件Str/Button

微信公眾號原文

系統:Windows 7
語言版本:Anaconda3-4.3.0.1-Windows-x86_64
編輯器:JetBrains PyCharm Community Edition 2016.3.2

  • 本系列介紹traitstraitsui的一些基礎知識
  • 今天介紹兩個常用控制元件,StrButton,中文來說,就是字串錄入及按鈕

Part 1:示例

  1. 提供一個介面,在輸入框輸入,點選按鈕顯示輸入內容,如下圖

執行結果
1.png

Part 2:程式碼

import win32api
import win32con

from
traits.api import HasTraits, Str, Button, on_trait_change from traitsui.api import View, Item, Group, HGroup, VGroup class Ui(HasTraits): input = Str() button = Button("點我") def _button_fired(self): input_str = self.input tips = "輸入內容為:\n\n{0}".format(input_str) win32api.
MessageBox(0, tips, "提示", win32con.MB_OK) g1 = [Item("input", style="simple", label="輸入內容", tooltip="寫入字串", emphasized=True), "_", Item("button", style="simple", show_label=False)] view = View(Group(*g1, label="控制元件Str-Button", show_border=True), resizable=
True, title="ui") ui = Ui() ui.configure_traits()

程式碼截圖
2.png

Part 3:程式碼解讀

  1. 整體程式碼分為3個部分
    • 匯入所需模組
    • 定義介面端的類
      a. 控制元件定義
      b. 事件定義:def
      c. 檢視定義:View
    • 執行介面端
  2. 如何定義按鈕點選相應事件?
    • 定義一個函式def,函式名稱必須是固定的,def _控制元件名稱_fired(self):
  3. 如何獲取Str控制元件中錄入的值?
    • self.控制元件變數名,本示例中:self.input
  4. 錄入提示:tooltip屬性,滑鼠移動到控制元件位置,會顯示提示
  5. 加粗強調:emphasized
  6. 關於Item類的其它屬性可以檢視其原始碼
    • 原始碼檢視:我這裡使用的是Eclipse方式,快捷鍵為F12或者ctrl加滑鼠左鍵
    • 檢視keymap中顯示的有些不能用或者沒有顯示,可以百度上搜索一下並自己嘗試一下

快捷鍵檢視keymap
3.png


以上為本次的學習內容,下回見

常按圖片識別二維碼,關注本公眾號
Python 優雅 帥氣
12x0.8.jpg