2011-07-21 43 views
0

可能重複:
Custom titlebars/chrome in a WinForms app做一個UI看起來像谷歌瀏覽器/ Flash的CS5

我一直在努力使自己的用戶界面,但它不是一個sucess 。


目標: 我想,我的菜單條是在同一個地方作爲控制盒(最小化,最大化和X)

就像在Flash CS5和谷歌瀏覽器(比方說,標籤成爲菜單條,ControlBox將以相同的方式放置),它將該ControlBox放在同一行中。

研究: 我見過很多帖子,我一直在尋找小時,才發現在這個網站後與人的回答是「儘量把FormBorderStyle爲None,使自己的UI」。

問題是,製作的Windows的控制盒是不容易的,我想有窗口(邊框角落找尋頁)的UI ......


任何幫助表示讚賞! :)

+1

你的問題太寬泛,你問的主題可能會填滿書籍。 – CodingGorilla

回答

2

這裏有一個類似的問題:Custom titlebars/chrome in a WinForms app。那裏的答案可以幫助你開始。

該問題沒有具體詢問控制盒,但其中一個答案鏈接到一組名爲「Drawing Custom Borders in Windows Forms」的文章,而first article in that series顯示瞭如何覆蓋WM_NCHITTEST。如果您檢查傳遞給WM_NCHITTEST的鼠標座標,並在座標位於您想要的控制框的位置時返回正確的代碼,那麼當用戶單擊該座標時,Windows將顯示系統菜單。我想你可能想要返回HTSYSMENU,但如果這不起作用,只需在普通窗口上覆蓋WM_NCHITTEST,調用繼承的處理程序,然後查看它返回的代碼。

+0

有人在帖子中提到氪套件,我目前正在看它是如何工作的!感謝您的快速回復:) – Martin

+0

最後我決定離開它,因爲用戶使用WinXP,並且可能存在兼容性問題。無論如何:D – Martin