[C++] Dialogleiste um Schaltfächen erweitern?

WantToKnow

Mitglied
Guten Abend allerseits,

Ist eine dialogbasierte Anwendung mit Unterstützung der MFC unter MS Visual 6.0 C++ (OS Windows XP Prof.).

Ja und wie? :confused:
Bitte um Tipps und Anhaltspunkte.

Wie immer vielen Dank im Voraus!
 
moin


Ja und wie, was?!
Hast du auch ne richtige Frage?

Tipps und Anhaltspunkte für was?


mfg
umbrasaxum
 
Ich möchte die Titelleiste eines Dialoges um ein paar Schaltflächen erweitern.
(neben den Hauptschaltflächen - Minimieren, Maximieren und Schließen)

Das, ja habe ich, dafür. =)
 
Relativ gesehen, ist das ein ziemlich großer Aufwand für mich.

Gibt es vielleicht eine Möglichkeit die Minimieren-Schaltfäche ein zweites mal zu laden und anschließend zu positionieren?

Hmm.. das Minimieren/Maximieren erfolgt doch durch einen Nachrichtenbearbeiter, oder nicht? Wäre es nicht möglicht die dafür zuständige Funktion zu überschreiben?

Danke im Voraus.
 
Die Minimieren/Maximieren/usw.-Funktion kommen meiner Erinnerung nach über WM_SYSCOMMAND an dein Fenster. Normalerweise wird das ja an die DefWindowProc weitergereicht, die sollte man aber dadurch auch einfach abfangen können.
 
Der Titelbereich eines Fensters (Dialog) gehört zur sogenannten Non-Client-Area und über die hat Windows die Oberhoheit. Sobald du dort irgendwas ändern willst, also z.B. nur mal eben einen Button hinzufügen, musst du den GESAMTEN Bereich selber zeichnen und managen. Daher entsteht der hohe Aufwand.

Für solche Anwendungen ist es wahrscheinlich einfacher, einen Dialog ohne Titel zu erzeugen und einen eigenen Titel im oberen Bereich des Dialogs zu erzeugen.
 
Ihr seid ja Zauberer. :)

Ich bin jetzt dazu geneigt die Angelegenheit folgendermaßen zu lösen:

1. Programm wird nur als Tray-Icon im Sys-Tray angezeigt.
2. Die Funktionalität der Minimieren-Schaltfäche wird durch eigene ersetzt.

Ja, und dafür werde ich wohl irgendwie die Windows-Nachrichten abfangen müssen.
Da muss ich aber noch schauen.

Das Problem war, dass ich eine weitere Schaltfläche haben wollte über die man das Programm in das Sys-Tray verschieben können sollte. Ist aber, so wie ich das sehe, mit zu viel Aufwand verbunden.
 
moin


Wie meinst du das?
Wenn du in MFC und mitm Assistenten ein Projekt erstellt hast, ist doch schon ne Nachrichten behandlungsroutine mit drin.


mfg
umbrasaxum
 

Neue Beiträge

Zurück