Hallo zusammen,
habe gerade einen Bildschirmschoner für Windows geschrieben, der auch wunderbar funktioniert mit Anzeige und Konfigurationsdialog. Das einzige, was nicht geht, ist die Vorschau in dem "Mini-Monitor", wenn ich mit der rechten Maustaste auf den Desktop klicke und die Registerkarte "Bildschirmschoner" anwählen.
Über die Kommandozeile kommt u.a. solch ein Parameter "/p:345678". Dieser Parameter ist die WId des Fensters, innerhalb dessen ich meine Vorschau anzeigen muß, sprich der "Mini-Monitor".
Ich habe es dann so versucht:
[in WId steht eben jene extrajhierte Nummer des parent Windows]
QWidget *parent=QWidget::find((HWND)WId);
Dann eine Debug-Ausgabe:
if (parent==NULL)
QMessageBox::information(NULL,"","No parent "+QString::number(WId));
else QMessageBox::information(NULL,"","Parent found "+QString::number(WId));
Dann das Widget erstellen und reichmalen etc.
QWidget *miniMonitor=new QWidget(parent);
Funktioniert aber nicht. parent ist immer NULL. Trotz scheinbar gültiger WId bekomme ich einfach keinen QWidget* Zeiger darauf und infolgedessen kann ich kein Child-Window anlegen.
Danke schön für Tips, Bernd
[gelöst] Windows-HWND zu QWidget*-Konvertierung
[gelöst] Windows-HWND zu QWidget*-Konvertierung
Zuletzt geändert von gerome69 am 20. September 2006 23:08, insgesamt 1-mal geändert.
-
FlorianBecker
- Beiträge: 1213
- Registriert: 2. Dezember 2004 10:54
- Kontaktdaten: