我們的桌面應用程序需要在Mac,Windows和Linux上運行。這就是我們選擇Qt的原因。之前,我們有三個獨立的代碼庫用於這3個平臺。Qt:哲學UI設計困境
在舊的實現中,我們用Close,Minimize,Maximize按鈕繪製了我們自己的「窗口標題」。它在所有三個平臺上看起來都一樣。
這一次,我不太確定。我想讓Qt爲每個平臺使用任何默認的標題和標題按鈕,矩形的「X」,「_」窗口按鈕,Mac上左手邊的圓形按鈕,以及Linux/Ubuntu等的其他內容。
這是一個明智的決定嗎?推動我的一個事情是,我必須爲我正在編寫的窗口類,拖動代碼,按鈕工作以及編寫自己的Windows標題所帶來的其他內容編寫調整大小的代碼。
我注意到如果我使用這個,「Qt :: FramelessWindowHint」來刪除標題,我會自動失去我的調整擒抱。有沒有辦法解決這個問題?另外你會如何去實現你自己的窗口拖動代碼? (讓你知道你想要用作「可拖動標題」的區域,好像我需要在該區域捕捉按鈕,進入拖動模式,跟蹤鼠標移動並根據增量移動窗口。類似的調整大小我以前在其他平臺上做過,但我想問問Qt是否有一種機制允許我「開箱即用」?
聽到了!任何給定窗口系統的用戶都有他們習慣的外觀和感覺(以及位置)。任何與此相背離的情況都會使他們不得不更加努力地弄清楚如何執行他們想要的操作,從而使應用程序感覺難以使用。正如這個答案所提到的:更少的編碼和支持總是一件好事。 – 2011-02-03 20:20:40