JLI Spieleprogrammierung Foren-Übersicht JLI Spieleprogrammierung

 
 FAQFAQ   SuchenSuchen   MitgliederlisteMitgliederliste   BenutzergruppenBenutzergruppen 
 medals.phpMedaillen   RegistrierenRegistrieren   ProfilProfil   Einloggen, um private Nachrichten zu lesenEinloggen, um private Nachrichten zu lesen   LoginLogin 

MDI-Anwendung (Für Editor)

 
Neues Thema eröffnen   Neue Antwort erstellen    JLI Spieleprogrammierung Foren-Übersicht -> Entwicklung
Vorheriges Thema anzeigen :: Nächstes Thema anzeigen  
Autor Nachricht
AFE-GmdG
JLI MVP
JLI MVP


Alter: 45
Anmeldedatum: 19.07.2002
Beiträge: 1374
Wohnort: Irgendwo im Universum...
Medaillen: Keine

BeitragVerfasst am: 07.09.2002, 12:10    Titel: MDI-Anwendung (Für Editor) Antworten mit Zitat

Hallo, Leutchens...

Ich hab auch mal wieder eine Frage, vielleicht kann mir ja jemand helfen.
Ich hab nämlich eine MDI-Anwendung geschrieben, die auch Common Controls enthalten soll. (Basis Win32, nicht MFC)
Zur Unterstützung habe ich in der MSDN folgendes gefunden:
Plattform-SDK, User Interface Services, Windowing, Multiple Document Interface...
Ich hab also mein Framefenster mit Nachrichtenbehandlungsroutine geschrieben, ein Clientfenster eingebaut und danach noch das Common Control Statusleiste. Jetzt mein Problem: Die Statusleiste (und später auch noch Rebar-Controls sowie weitere Fenster) nehmen ja auch einen Platz im Framewindow ein. Ich hab es bis jetzt allerdings noch nicht geschafft, das Clientwindow so zu resizen, daß die Common Controls nicht überdeckt werden.
Die Nachricht WM_SIZE hat nicht den gewünschten erfolg, da das Clientwindow die Parameter für X, Y, SX und SY (in lParam codiert) ignoriert und eigene Werte aus der größe des Framewindows berechnet...
Gleiches gild für die Funktion SetWindowsPos() aus der Win32-API...

Kann mir jemand helfen? Den Quellcode-Ausschnitt kann ich notfalls auch per eMail zuschicken.

MFG, AFE-GmdG
_________________
CPP:
float o=0.075,h=1.5,T,r,O,l,I;int _,L=80,s=3200;main(){for(;s%L||
(h-=o,T= -2),s;4 -(r=O*O)<(l=I*I)|++ _==L&&write(1,(--s%L?_<(L)?--_
%6:6:7)+\"World! \\n\",1)&&(O=I=l=_=r=0,T+=o /2))O=I*2*O+h,I=l+T-r;}
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen
AFE-GmdG
JLI MVP
JLI MVP


Alter: 45
Anmeldedatum: 19.07.2002
Beiträge: 1374
Wohnort: Irgendwo im Universum...
Medaillen: Keine

BeitragVerfasst am: 08.09.2002, 15:45    Titel: Antworten mit Zitat

OKOK, Helfen kann mir warscheinlich mal wieder niemand *grins*
Na gut, nach einigem rumprobieren hab ich's dann doch noch hinbekommen. Hier die Lösung für alle, die es Interessiert: Innerhalb der Nachrichtenbehandliungsroutine WM_SIZE abfangen, die neue Fenstergröße einstellen (SetWindowPos) und danach rein Return angeben, damit nicht die Defaultroutine aufgerufen wird.
Diese hätte nämlich wieder dafür gesorgt, daß das Clientfenster neu resized wird...

AFE-GmdG
_________________
CPP:
float o=0.075,h=1.5,T,r,O,l,I;int _,L=80,s=3200;main(){for(;s%L||
(h-=o,T= -2),s;4 -(r=O*O)<(l=I*I)|++ _==L&&write(1,(--s%L?_<(L)?--_
%6:6:7)+\"World! \\n\",1)&&(O=I=l=_=r=0,T+=o /2))O=I*2*O+h,I=l+T-r;}
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen
DarK
Super JLI'ler



Anmeldedatum: 23.07.2002
Beiträge: 452
Wohnort: NRW
Medaillen: Keine

BeitragVerfasst am: 08.09.2002, 19:38    Titel: Antworten mit Zitat

wie sollen wir Noobs dir den auch schon helfen Wink
_________________
"Denken ist Arbeit, Arbeit ist Energie und Energie soll man sparen."

"Theorie ist, wenn man alles weiss, aber nichts funktioniert.
Praxis ist, wenn man nichts weiss, aber alles funktioniert.
Realität ist, wenn nichts funktioniert und keiner weiss warum."

"Es gehört ein wenig Mut dazu nicht das zu tun was ALLE tun"
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden
Beiträge der letzten Zeit anzeigen:   
Neues Thema eröffnen   Neue Antwort erstellen    JLI Spieleprogrammierung Foren-Übersicht -> Entwicklung Alle Zeiten sind GMT
Seite 1 von 1

 
Gehe zu:  
Du kannst keine Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum nicht antworten.
Du kannst deine Beiträge in diesem Forum nicht bearbeiten.
Du kannst deine Beiträge in diesem Forum nicht löschen.
Du kannst an Umfragen in diesem Forum nicht mitmachen.


Powered by phpBB © 2001, 2005 phpBB Group
Deutsche Übersetzung von phpBB.de

Impressum