簡體   English   中英

如何在Windows任務欄中創建文本框?

[英]How to make a textbox in the windows taskbar?

我正在制作一個應用程序,它將從用戶那里獲取搜索查詢並顯示結果。 為了使界面更加用戶友好,我想在任務欄中創建一個接受輸入的文本框,然后在新窗口中顯示結果。 我已經在SO以及其他網站上查看過相同問題的鏈接。
基於我通過谷歌和其他網站發現我們需要使用Bands來實現這一點。
有人可以解釋一下上面問題的解決方案(Bands),你也可以指出任何好的鏈接或者一些文章,或者你可以寫一個代碼示例來解釋。 我只是想要足夠的信息讓我開始解決這個問題。

“你應該在新的開發中使用縮略圖工具欄代替桌面樂隊,從Windows 7開始不支持。” - MSDN

不幸的是,似乎微軟正在勸阻像你所說的那樣創建任務欄GUI。 替代方案是使用任務欄擴展,討論在這里 MSDN確實在任務欄擴展頁面上提供了一些相互矛盾的信息,將開發人員引導到IDeskBand2頁面(頂部的引用來自)。 為了將來的兼容性,我仍然建議不要使用它。

如果您已經設置了它,或者您出於某種原因僅針對xp(或vista),則以下內容可能會有所幫助:

盡管它們可以像普通窗口一樣使用,但是band對象是容器中存在的COM對象。 瀏覽器欄包含在Internet Explorer中,桌面欄包含在Shell中。 雖然它們提供不同的功能,但它們的基本實現非常相似。 主要區別在於如何注冊band對象,而對象又控制對象及其容器的類型。 本節討論所有band對象共有的實現方面。 有關其他實現詳細信息,請參閱自定義瀏覽器欄的簡單示例。 除了IUnknown和IClassFactory之外,所有band對象都必須實現以下接口:
- IDeskBand
- IObjectWithSite
- IPersistStream

除了注冊其類標識符(CLSID)之外,還必須為相應的組件類別注冊Explorer Bar和桌面帶對象。 注冊組件類別可確定對象類型及其容器。 工具帶使用不同的注冊過程,並且沒有類別標識符(CATID)。 需要它們的三個波段對象的CATID是:
- 波段類型:組件類別
- 垂直瀏覽器欄:CATID_InfoBand
- 水平瀏覽器欄:CATID_CommBand
- 桌面樂隊:CATID_DeskBand

幾乎所有你需要知道的東西都可以在這里找到

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM