這幾天在重新編寫整理NekoLc的文檔,故分享一下我之前設計的接口和思路,希望大家也能從中受益。
首先,在MainWindow中定義了兩個接口:
updatePage()- 切換頁面並resize一次
showPage()- 切換頁面的封裝,只需要一個參數
我在類中存儲了兩個變數,用來記錄目前顯示的頁面與上一個頁面。
這是因爲updatePage函式只負責顯示目前頁並隱藏舊頁,所以需要手動傳入舊頁和新頁的參數。
而showPage則多一層封裝,這樣便只傳入需要顯示的頁面即可。
同時,因爲這兩個函式只是單純的顯示和隱藏,它們不會變更頁面的內容和狀態。
所以有了更具體的函式:
Loading視窗:
showLoad()- 切換頁面並顯示loading狀態,以及設定loading資訊
setLoadingVal()- 設定目前loading的值
setLoadingNow()- 設定目前loading的文本
在顯示Loading時可一次設定全部資訊,同時我獨立留了常變更的兩個狀態的接口。
這樣就不需要每次全部重新設定,只設定值和狀態即可。

提示視窗:
showHint()- 顯示提示組件
按鈕設計有兩種模式,單個按鈕和選擇按鈕。
單個按鈕時便只有確認,選擇按鈕則爲確認和取消。
這樣便涵蓋了大部分場景,只需要顯示一次提示...以及yes or no的選擇。
考慮到提示通常只需展示一次,所以我們應該爲其添加點擊後自動隱藏,並在觸發回調後斷開訊號。

輸入視窗:
showInput()- 顯示輸入組件
hideInput()- 隱藏輸入組件,並斷開之前的回調訊號
getInput()- 取得目前輸入組件的值
要求用戶輸入資訊的流程是:
顯示輸入視窗→在回調中取得輸入資訊→滿足要求後關閉輸入視窗。
這樣可以驗證輸入的資訊,並於滿足要求後再關閉視窗。

你好呀~ 看到留言訊息裏的 ⌈O2⌋可能是拼寫錯誤,故維持了原始網域並更新了頭像路徑 如有誤可再留言變更~
您好,麻烦更新一下我的站点信息,谢谢~ Name: Ethan Desc: Don’t stay awake for too long. Link: https://hanlifeO2.com Avatar: https://hanlifeO2.com/avatar.svg
嗨~ 朋友你好呀,已經加上咯~