
- PySimpleGUI 教程
- PySimpleGUI - 首頁
- PySimpleGUI - 簡介
- PySimpleGUI - 環境搭建
- PySimpleGUI - Hello World
- PySimpleGUI - 彈出視窗
- PySimpleGUI - 視窗類
- PySimpleGUI - 元素類
- PySimpleGUI - 事件
- PySimpleGUI - 選單欄
- PySimpleGUI - Matplotlib 整合
- PySimpleGUI - 使用 PIL
- PySimpleGUI - 偵錯程式
- PySimpleGUI - 設定
- PySimpleGUI 有用資源
- PySimpleGUI - 快速指南
- PySimpleGUI - 有用資源
- PySimpleGUI - 討論
PySimpleGUI - 設定
全域性設定
全域性設定是應用範圍內可用的應用程式設定。這些設定控制元素類的各種屬性,應用於應用程式中的所有元素。
這些設定以分層方式工作。如果為視窗指定了不同的值,則全域性設定將被覆蓋。反過來,如果為特定元素指定了不同的值,則視窗物件中定義的設定也會被覆蓋。
例如,如果全域性將字型大小設定為 16,則所有元素的文字將相應顯示。但是,如果在佈局中定義了具有大小不為 16 的字型屬性的特定文字或輸入元素,則其外觀將相應更改。
函式 `set_options` 用於更改將全域性應用的設定。如果是應用於視窗的設定,則該設定不僅應用於您建立的視窗,也應用於彈出視窗。
import PySimpleGUI as sg sg.set_options(font=('Arial Bold', 16))
使用者設定
“使用者設定”是一個自動寫入硬碟的字典。使用者設定儲存在 Python 字典中,該字典從磁碟儲存和載入。因此,各個設定是字典中的鍵。
使用者設定函式列表:
序號 | 函式及描述 |
---|---|
1 | user_settings 以字典形式返回設定 |
2 | user_settings_delete_entry 刪除設定 |
3 | user_settings_delete_filename 刪除設定檔案 |
4 | user_settings_file_exists 如果指定設定檔案存在,則返回 True |
5 | user_settings_filename 返回設定檔案的完整路徑和檔名 |
6 | user_settings_get_entry 返回設定的值。如果找不到設定,則返回指定的預設值 |
7 | user_settings_load 從設定檔案載入字典。 |
8 | user_settings_save 將設定儲存到當前或新指定的檔案。 |
9 | user_settings_set_entry 將條目設定為特定值 |
10 | user_settings_write_new_dictionary 將指定的字典寫入設定檔案 |
建立使用者設定物件。
settings = sg.UserSettings()
使用字典樣式的 `[]` 語法讀取設定。如果條目的名稱是 `'-item-'`,則讀取值是透過寫入實現的
item_value = settings['-item-']
以下語句用於寫入設定。
settings['-item-'] = new_value
要刪除專案,再次使用字典樣式的語法。
del settings['-item-']
您還可以呼叫 `delete_entry` 方法來刪除條目。
settings.delete_entry('-item-')
以下簡單的程式演示了使用者設定的載入/儲存
import PySimpleGUI as sg import json sg.set_options(font=('Arial Bold', 16)) layout = [ [sg.Text('Settings', justification='left')], [sg.Text('User name', size=(10, 1), expand_x=True), sg.Input(key='-USER-')], [sg.Text('email ID', size=(10, 1), expand_x=True), sg.Input(key='-ID-')], [sg.Text('Role', size=(10, 1), expand_x=True), sg.Input(key='-ROLE-')], [sg.Button("LOAD"), sg.Button('SAVE'), sg.Button('Exit')] ] window = sg.Window('User Settings Demo', layout, size=(715, 200)) # Event Loop while True: event, values = window.read() if event in (sg.WIN_CLOSED, 'Exit'): break if event == 'LOAD': f = open("settings.txt", 'r') settings = json.load(f) window['-USER-'].update(value=settings['-USER-']) window['-ID-'].update(value=settings['-ID-']) window['-ROLE-'].update(value=settings['-ROLE-']) if event == 'SAVE': settings = {'-USER-': values['-USER-'], '-ID-': values['-ID-'], '-ROLE-': values['-ROLE-']} f = open("settings.txt", 'w') json.dump(settings, f) f.close() window.close()
在輸入框中輸入資料,然後單擊“儲存”按鈕。

將儲存一個 JSON 檔案。要載入先前儲存的設定,請單擊“載入”按鈕。
廣告