Zum Inhalt springen

Dialoge nicht in der Taskleiste


Empfohlene Beiträge

Geschrieben

Moin Maddin,

ich hab's zwar noch nicht probiert aber könnte nicht folgendes funktionieren:

1. ein normales Fenster erstellen, aber noch nicht anzeigen

2. einen Benutzeroberflächenthread (was für ein Wort!), also eben keinen Arbeitsthread starten

3. Hauptfenstermit SW_HIDE anzeigen

Ich weiß allerdings nicht, ob ein Thread für Benutzereingaben in der Taskleiste angezeigt wird. Wenn nicht, könnte doch das Fenster des Threads als Hauptfenster benutzt werden, bis es (und damit die Anwendung) geschlossen wird.

Wie gesagt, keine Gewähr, aber falls es funktionuckelt, meld' Dich doch nochmal!

Gruß

Geschrieben

problem an der sache ist, das fenster, die man sich mit ShowWindow (SW_HIDE); anzeigen lässt zwar nicht in der taskleiste zu sehen sind, dafür aber auch nicht auf dem desktop und das sollte das fenster schon.

Geschrieben

habs geschafft.

habe die funktion OnPaint dahingehend geändert, das sie das aktuelle fenster versteckt und dann ein neues anzeigt, dessen mama das versteckte fenster ist. denn wie ich nachlesen könnte, werden bloß fenster ohne eltern in der taskleiste angezeigt.

meine OnPaint- Funktion:


void CTestDlg::OnPaint() 

{

	if (IsIconic())

	{

		CPaintDC dc(this); // Gerätekontext für Zeichnen


		SendMessage(WM_ICONERASEBKGND, (WPARAM) dc.GetSafeHdc(), 0);


		// Symbol in Client-Rechteck zentrieren

		int cxIcon = GetSystemMetrics(SM_CXICON);

		int cyIcon = GetSystemMetrics(SM_CYICON);

		CRect rect;

		GetClientRect(&rect);

		int x = (rect.Width() - cxIcon + 1) / 2;

		int y = (rect.Height() - cyIcon + 1) / 2;


		// Symbol zeichnen

		dc.DrawIcon(x, y, m_hIcon);

	}

	else

	{

		CDialog::OnPaint();

		CDlg dlg;

		dlg.DoModal();

		OnCancel();

	}

}

Dein Kommentar

Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung wiederherstellen

  Nur 75 Emojis sind erlaubt.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...