ToolTips in Dialog basierten Anwendung.
-
Hallo an alle.
Ich habe eine Dialogbasierte Anwendung, in der ich eine Toolbar eingefügt habe, und zwar folgendermaßen:
CToolBar cToolbar; cToolBar.CreateEx(this, TBSTYLE_FLAT, WS_CHILD | WS_VISIBLE | CBRS_TOP | CBRS_GRIPPER | CBRS_TOOLTIPS | CBRS_FLYBY | CBRS_SIZE_DYNAMIC); cToolBar.LoadToolBar(IDR_TOOLBAR1); cToolBar.ShowWindow(SW_SHOW); cToolBar.SetBarStyle(CBRS_ALIGN_ANY | CBRS_TOOLTIPS | CBRS_FLYBY | CBRS_SIZE_DYNAMIC); RepositionBars(AFX_IDW_CONTROLBAR_FIRST, AFX_IDW_CONTROLBAR_LAST,0);
Nun möchte ich gerne für die Buttons der Toolbar ToolTips deklarieren. Das habe ich folgendermaßen in der OnInitDialog gemacht:
CToolTipCtrl* m_pToolTip; m_pToolTip=new CToolTipCtrl; m_pToolTip->Create(this,TTS_ALWAYSTIP); m_pToolTip->AddTool(GetDlgItem(IDC_BUTTON1),"TEST",CRect(0,0,100,100),3500); m_pToolTip->Activate(TRUE);
desweiteren habe ich folgendes festgelegt:
BOOL CMyDlg::PreTranslateMessage(MSG* pMsg) BOOL CFgdDlg::PreTranslateMessage(MSG* pMsg) { m_pToolTip->RelayEvent(pMsg); return CDialog::PreTranslateMessage(pMsg); }
Setze ich für die ID der Ressource einen gewöhnlichen Button ein, so funktioniert es einwandfrei,
Setze ich allerdings einen Button aus der Symbolleiste ein, so stürzt das Programm noch vor der Auführung an. Habe ich einen Gedankenfehler, wenn ich davon ausgehe, dass der Button in der Symbolleiste wie ein normaler Button behandelt werden kann? Immerhin hat ja auch jeder Button in der Symbolleise eine eigene ID.
Wie kann ich die ToolTips auch unter meiner Dialogbasierten Anwendung in der Toolbar zum Laufen bringen. Ideen??Vielen, vielen Dank schon mal im Voraus
Alexandra
-
Muss doch noch mal fragen: Keiner eine Idee??
Bei Codeguru gibt es ein Beispiel, aber irgendwie kann ich nicht glauben, dass dies die einzige Lösung ist. Ich gebe euch mal den Link: [url] http://www.codeguru.com/forum/showthread.php?s=121cb418f7e576e0097b6eec2e12394a&threadid=161404&highlight=toolbar+tooltip[/url]
Es geht doch sichelrich auch noch anders oder???Vielen Dank Alexandra