Tooltip ( Balloon ) anzeigen?



  • Hallo an alle,
    kaum das letzte Problem gelöst und nun schon wieder eins.

    Ich möchte gern in meinem Dialog einen Tooltip anzeigen lassen. Wie macht man das?

    Zum Hintergrung: Ich habe einen Dialog, der öffnet einen zweiten modalen Dialog und es läuft ein Prozess. Diesen Prozess kann man mit "Esc" abbrechen. So damit der User aber weiß, daß das funktioniert soll halt dieser Tooltip z.B. in der Mitte angezeigt werden und auch nur für eine bestimmte Zeit.

    Ist das realisierbar und wenn, wie?

    MfG



  • kuck mal auf code project nach tooltips bin mir sicher du wirst dort das richtige finden.

    http://www.codeproject.com/

    mfg
    LowFly



  • Habe ich ja schon vorher gemacht. Da gibt es auch eine Klasse zu Tooltips, aber die ist mir ehrlich gesagt viel zu umfangreich. Das muß doch auch irgendwie anders gehen. Vielleicht mit einer MessageBox ohne Rahmen oder besser mit einer Bitmap, die aber transparent ( also nonrectal ) sein sollte?



  • Naja, diese Tooltips sind ja seit WinXP serienmäßig dabei. Wenn dir das von Codeproject alles zu umfangreich ist (was ich nicht nachvollziehen kann, und als Korintenkakkerei empfinde), kannst du auch in der MSDN entsprechende Win32-API-Funktionen finden. Dann ist das alles auch "klein".



  • Ja und wie heißt diese Funktion. Hatte da auch schon nach Tooltip gesucht und wurde leider nicht fündig?!



  • Man, so fauel? Gib doch mal in der MSDN als Suchbegriffe "balloon tooltip win32" ein und eines der ersten Ergebnisse ist das:

    http://msdn.microsoft.com/library/default.asp?url=/library/en-us/shellcc/platform/commctls/tooltip/usingtooltips.asp



  • Nun habe ich das doch mit der Klasse vom codeproject gemacht hat so auch erstmal funktioniert, aber nun wollte ich ja den Tooltip dann anzeigen lassen, wenn ein Process anfängt zu laufen. Also nicht per mausklick und direkt im Dialogfenster. Der Dialog geht auf, der Process wird gestartet und dann soll der Tooltip angezeigt werden (z.B. in der Mitte des Dialogs) und nach einer kurzen Zeit wieder verschwinden.
    Wie kann ich den das nun realisieren??



  • Nimm eine von diesen Funktionen:

    void ShowHelpTooltip (LPPOINT pt, DWORD dwIdText, HICON hIcon = NULL);
    void ShowHelpTooltip (LPPOINT pt, DWORD dwIdText, DWORD dwIdIcon, CSize & szIcon = CSize(0, 0));
    void ShowHelpTooltip (LPPOINT pt, LPCTSTR lpszString, HICON hIcon = NULL);
    void ShowHelpTooltip (LPPOINT pt, LPCTSTR lpszString, DWORD dwIdIcon, CSize & szIcon = CSize(0, 0));
    void ShowHelpTooltip (LPPOINT pt, PPTOOLTIP_INFO & ti);



  • Falls es jemanden interessiert: Ich habe das Problem nun mit einem Splash-Screen und einem nachgeschalteten Timer gelöst. Funktioniert auch ganz gut!! 🤡

    Danke für eure Mühe!!
    Gruß


Anmelden zum Antworten