我創建新的應用程序並使用close,最大化和最小化按鈕來移除標題欄(只需將windowFlags設置爲Qt::CustomizeWindowHint
)。我創建了我自己的按鈕。現在我必須搜索刪除按鈕的圖標,但我找不到它們(關閉,最小化,最大化)。Qt C++邊框圖標
問題:我可以使用Windows 7圖標嗎?它不違反許可證嗎?
我創建新的應用程序並使用close,最大化和最小化按鈕來移除標題欄(只需將windowFlags設置爲Qt::CustomizeWindowHint
)。我創建了我自己的按鈕。現在我必須搜索刪除按鈕的圖標,但我找不到它們(關閉,最小化,最大化)。Qt C++邊框圖標
問題:我可以使用Windows 7圖標嗎?它不違反許可證嗎?
將按鈕分配爲位圖圖像或嵌入到應用程序中很可能違反了Windows的EULA。
但是,如果您的應用在Windows上運行,則不需要分發它們。只要找到關閉,最小化和最大化按鈕存儲在Windows 7(可能是系統文件夾中的某個DLL)的位置,然後當您運行應用程序時,直接使用這些圖標(我相信QIcon可以加載它們)。這樣,就沒有侵犯版權的行爲。
你可以使用Qt的將QStyle來獲得Qt使用繪製自己的標題欄和這樣的圖標:
QStyle* style = QApplication::style();
QIcon icon = style->standardIcon(QStyle::SP_TitleBarCloseButton);
看一看在QStyle::StandartPixmap
enum爲Qt的可用標準的圖標的列表。
謝謝,它的工作原理。但是這個圖標看起來像Windows XP風格。我可以獲得Windows 7圖標嗎? – Outsider
您可以使用QStyleFactory :: keys()來枚舉可用的樣式。我很確定只有在Windows 7上運行應用程序時,才能使用Windows 7樣式。 – JediLlama
結果QStyleFactory的::鍵()是: 的Windows, 的WindowsXP,WindowsVista的 , 主題, CDE, Plastique,該 Cleanlooks。 我爲這種風格類型的每一種設置應用風格,風格發生了變化,但圖標(關閉按鈕)看起來像默認的Windows7按鈕(顏色不是紅色,沒有美麗的燈光)。我的操作系統是Windows 7,具有默認主題。 – Outsider
謝謝,我會嘗試 – Outsider