Tooltipps lassen sich auch während des Programmlaufes vorübergehend aus- und wieder einschalten. Das gilt aber generell für alle Tooltipps. Das Beispiel demonstriert dies mit Hilfe einer Checkbox. Standardmäßig sind die Tipps aktiviert. Wenn Sie das Häkchen aus der Checkbox entfernen, werden sie deaktiviert. Zu diesem Zweck nutzen wir die Nachricht
Als WPARAM geben wir true an, wenn die Tipps aktiviert sein sollen; und false, wenn sie deaktiviert sein sollen. Die Prüfung unserer Checkbox lautet daher also:
bFlag := SendMessage(hCheckBox,BM_GETCHECK,0,0) = BST_CHECKED;
Den so ausgelesenen Status senden wir mit Hilfe der o.g. Nachricht an unser Tooltipp-Fenster:
SendMessage(hToolTip,TTM_ACTIVATE,integer(bFlag),0);
Wenn Sie einen Tooltipp dauerhaft entfernen wollen, dann verwenden Sie dazu die Nachricht
TToolInfo-Record erwartet von Ihnen die gültige Angabe des Control- bzw. Fenster-Handles, dessen Tipp Sie entfernen wollen. Das Beispielprogramm verwendet diese Funktion nicht, aber eine Aufrufmöglichkeit könnte so aussehen:
// Strukturgröße festlegen ti.cbSize := sizeof(TToolInfo);
// das Handle des Eingabefeldes, // & die Anwendungsinstanz ti.hwnd := hEdit; ti.hInst := hInstance;
// Tooltipp entfernen SendMessage(hToolTip,TTM_DELTOOL,0,integer(@ti));
Alle anderen Tooltipps bleiben davon unberührt. Es würde tatsächlich nur der Tipp unseres Eingabefeldes entfernt werden.