none
CTooltipCtrl schliesst sofort bei MouseOver

    Frage

  • Hallo

    in einer von CWnd abgeleiteten Klasse erzeuge ich einen Tooltip mit folgendem Code:

    	m_pToolTip = new CToolTipCtrl;
    	CToolInfo m_Info;
    	if (!m_pToolTip->Create(this))
    	{
    		TRACE("Unable to Create ToolTip\n");
    		return;
    	}
    	str="Dies ist ein Test";
    	if (m_pToolTip->AddTool(this,str))       
    	{
    		TRACE("Unable to add Listcontrol to the tooltip\n");       
    	}
    	m_pToolTip->GetToolInfo(m_Info, this);
    	m_Info.uFlags = m_Info.uFlags | TTF_PARSELINKS;
    	m_pToolTip->SetToolInfo(&m_Info);
    	m_pToolTip->SetMaxTipWidth(800);
    	m_pToolTip->SetDelayTime(TTDT_INITIAL,800);//Fenster soll nach 500ms sichtbar sein 
    	m_pToolTip->SetDelayTime(TTDT_AUTOPOP, 4000);//Fenster soll 6 Sec sichtbar sein 
    	m_pToolTip->SetDelayTime(TTDT_RESHOW, 2000);//Fenster soll 6 Sec sichtbar sein 
    	m_pToolTip->Activate(TRUE);
    

    In PreTranslateMessage der Klasse zeige ich dann den Tooltip mit folgendem Code

    		str=_T("dies ist der Tooltiptext");
    		if (!m_pToolTip->IsWindowVisible())
    		{
    			m_AktToolText=str;
    			m_pToolTip->UpdateTipText(str,this);
    			m_pToolTip->RelayEvent(pMsg);
    		}
    		return CWnd::PreTranslateMessage(pMsg);

    Mein Problem ist das der Tooltip verschwindet wenn ich mit der Maus über den Tooltip gehe. Ich will das aber verhindern weil sich im Tooltip ein Link befindet den der Nutzer anklicken kann.

    Wie kann ich verhindern das der Tooltip sofort verschwindet wenn die Maus über den Tooltip steht ?



    Mittwoch, 11. Juli 2018 08:20

Alle Antworten

  • Hallo Jörg,

    Würdest Du versuchsweise TTS_ALWAYSTIP als zweiten Parameter der Create-Methode übergeben oder das rect-Feld der TOOLINFO-Struktur verwenden?

    Mehr dazu und weitere Ansatzpunkte findest Du in folgendem Thread:
    Tool tips for custom made control using CToolTipCtrl ? (MFC)

    Gruß,
    Dimitar


    Bitte haben Sie Verständnis dafür, dass im Rahmen dieses Forums, welches auf dem Community-Prinzip „IT-Pros helfen IT-Pros“ beruht, kein technischer Support geleistet werden kann oder sonst welche garantierten Maßnahmen seitens Microsoft zugesichert werden können.

    Donnerstag, 12. Juli 2018 08:13
    Moderator