我正在尋找一種方法將關閉按鈕添加到類似於NotifyIcon所具有的.NET ToolTip對象。我使用工具提示作爲一個消息氣球,通過Show()方法以編程方式進行調用。這工作正常,但沒有onclick事件或關閉工具提示的簡單方法。你必須在你的代碼的其他地方調用Hide()方法,我寧願讓工具提示能夠關閉它自己。我知道網絡上有幾個使用管理和非託管代碼的氣球工具提示來執行這個與Windows API,但我寧願留在我的舒適的.NET世界。我有一個第三方應用程序調用我的.NET應用程序,並且在嘗試顯示非託管工具提示時崩潰。將關閉按鈕(紅色x)添加到.NET工具提示
12
A
回答
4
您可以通過覆蓋現有工具並自定義onDraw函數來嘗試實現您自己的工具提示窗口。我從來沒有嘗試添加按鈕,但之前已經使用工具提示進行了其他自定義。
1 class MyToolTip : ToolTip
2 {
3 public MyToolTip()
4 {
5 this.OwnerDraw = true;
6 this.Draw += new DrawToolTipEventHandler(OnDraw);
7
8 }
9
10 public MyToolTip(System.ComponentModel.IContainer Cont)
11 {
12 this.OwnerDraw = true;
13 this.Draw += new DrawToolTipEventHandler(OnDraw);
14 }
15
16 private void OnDraw(object sender, DrawToolTipEventArgs e)
17 {
...Code Stuff...
24 }
25 }
2
你可以嘗試覆蓋的CreateParams方法在您的實現工具提示類的...... 即
protected override CreateParams CreateParams
{
get
{
CreateParams cp = base.CreateParams;
cp.Style = 0x80 | 0x40; //TTS_BALLOON & TTS_CLOSE
return cp;
}
}
2
你也可以繼承你自己的CreateParams工具提示類設置TTS_CLOSE風格:
private const int TTS_BALLOON = 0x80;
private const int TTS_CLOSE = 0x40;
protected override CreateParams CreateParams
{
get
{
var cp = base.CreateParams;
cp.Style = TTS_BALLOON | TTS_CLOSE;
return cp;
}
}
TTS_CLOSE樣式也是requires TTS_BALLOON樣式,您還必須在工具提示上設置ToolTipTitle屬性。
爲了使這種風格起作用,您需要啓用Common Controls v6風格using an application manifest。
添加一個新的「應用程序清單文件」,並添加<裝配>元素下的以下內容:
<dependency>
<dependentAssembly>
<assemblyIdentity
type="win32"
name="Microsoft.Windows.Common-Controls"
version="6.0.0.0"
processorArchitecture="*"
publicKeyToken="6595b64144ccf1df"
language="*"
/>
</dependentAssembly>
</dependency>
在Visual Studio 2012,至少,這個東西包含在默認的模板,但註釋掉 - 你可以取消註釋。
相關問題
- 1. 向rich:工具提示添加關閉按鈕
- 2. 工具提示關閉按鈕
- 3. 帶關閉按鈕的工具提示
- 4. QDockWidget關閉按鈕和浮動按鈕的工具提示?
- 5. 將工具提示添加到閃亮的禁用按鈕?
- 6. 在WPF中添加X關閉按鈕
- 7. jQuery插件qtip2 - 關閉鼠標按下關閉按鈕上的工具提示
- 8. 用類似紅色的X按鈕關閉子彈殼
- 9. 問題處理關閉SWT的紅色X按鈕
- 10. 將按鈕添加到Finder工具欄?
- 11. 將按鈕添加到工具欄
- 12. 將工具提示添加到UIbutton
- 13. 將工具提示添加到StripMenuItem C#
- 14. 將工具提示添加到組框
- 15. 將工具提示添加到CStatic中
- 16. 如何將工具提示添加到Windows窗體中的「X」?
- 17. 如何添加工具提示到按鈕
- 18. 帶關閉按鈕的氣球工具提示 - C#
- 19. 可點擊的工具提示與關閉按鈕
- 20. javascript/jquery響應式工具提示關閉按鈕
- 21. Elfinder:添加關閉按鈕
- 22. 添加關閉按鈕
- 23. 如何添加一個關閉按鈕(X)到這個覆蓋?
- 24. 添加關閉按鈕到UIModalPresentationPageSheet角
- 25. 如何添加關閉按鈕到Qmenu?
- 26. 添加關閉按鈕到NSTabviewitem
- 27. 添加關閉按鈕到字段集
- 28. 添加關閉按鈕到ajax fancybox
- 29. 工具提示按鈕
- 30. 使CSS工具提示點擊時打開(加上關閉按鈕)
任何人都可以證實此操作嗎?它是什麼樣子的? – Justin 2011-02-11 17:46:51