Verhalten von :minButton, :maxButton im Fenster

Grafische Primitive, XbaseParts und Darstellungsfragen allgemein.

Moderator: Moderatoren

Antworten
Benutzeravatar
mini990
1000 working lines a day
1000 working lines a day
Beiträge: 592
Registriert: Sa, 28. Jan 2006 9:44
Wohnort: Berg-Richtheim bei Neumarkt i.d.Opf.
Danksagung erhalten: 1 Mal

Verhalten von :minButton, :maxButton im Fenster

Beitrag von mini990 »

mir ist aufgefallen daß die Anweisungen :minbutton, :maxbutton bei XbpDialog() nur funktionieren wenn als Parent der Appdesktop angegeben ist. Gebe ich als Parent SetAppwindow():drawingarea an haben die Angaben :minbutton usw. keinerlei Wirkung.

Hintergrund: Der Benutzer soll das neue Fenster zwar mit Klick auf "X" schließen können aber nicht durch Klick auf das entsprechende Symbol in der Titelleiste maximieren können.....

Da ich das neue Fenster aber auf das bereits geöffnete Fenster bezogen plazieren möchte muß ich doch SetAppwindow() verwenden, oder?

danke im voraus

Gruß Stefan
Benutzeravatar
brandelh
Foren-Moderator
Foren-Moderator
Beiträge: 15695
Registriert: Mo, 23. Jan 2006 20:54
Wohnort: Germersheim
Hat sich bedankt: 65 Mal
Danksagung erhalten: 33 Mal
Kontaktdaten:

Beitrag von brandelh »

Hallo,

das ist jetzt zwar schon ne Weile her, aber vielleicht hilft es dennoch.
Die Min/Max Buttons haben bei mir bis jetzt immer funktioniert.

im Verzeichnis \Alaska\xppw32\source\samples\solution\MdiBase kannst du ein Beispiel mit allen möglichen Fensterarten (modal, frei, MDI etc.) sehen, bei dem die Min/Max Buttons ganz normal reagieren.

Eventuell hilft es die Lösung zu finden.
Gruß
Hubert
Benutzeravatar
AUGE_OHR
Marvin
Marvin
Beiträge: 12906
Registriert: Do, 16. Mär 2006 7:55
Wohnort: Hamburg
Hat sich bedankt: 19 Mal
Danksagung erhalten: 45 Mal

Re: Verhalten von :minButton, :maxButton im Fenster

Beitrag von AUGE_OHR »

mini990 hat geschrieben:mir ist aufgefallen daß die Anweisungen :minbutton, :maxbutton bei XbpDialog() nur funktionieren wenn als Parent der Appdesktop angegeben ist. Gebe ich als Parent SetAppwindow():drawingarea an haben die Angaben :minbutton usw. keinerlei Wirkung.
wenn du SetAppwindow() verwendest musst du ja vorher schon einen
Parent gehabt haben (AppDesktop).

wenn du nun also auf SetAppwindow():drawingarea jetzt ein XbpDialog
erzeugt ist es sozusagen der "Enkel" ... den gibt es aber nicht in einer
MDI Anwendung.
Hintergrund: Der Benutzer soll das neue Fenster zwar mit Klick auf "X" schließen können aber nicht durch Klick auf das entsprechende Symbol in der Titelleiste maximieren können.....
kennst du wirklich eine "User" der oben rechts auf das "X" clickt ?
ich würde ihm einen schönen grooooosssen, bunten Button machen :)

ist deine Anwendung voll MDI fähig ? wenn du nicht "ganz sicher" bist
denke dran was der User alles "anrichten" kann mit einem "Fenster"
welches eine Titlezeile hat.

Da mein Code meistens "alter" Cl*pper Code ist, also nicht MDI fähig,
muss ich meine User in solchen "Enkel" Fenster "festnageln" sodas ich
Titlebar := .F. verwende und evtl. Min/Max/"X" wird über Buttons
simuliert.
Da ich das neue Fenster aber auf das bereits geöffnete Fenster bezogen plazieren möchte muß ich doch SetAppwindow() verwenden, oder?
naja, Cli*pper mässig gedacht ist das richtig, nur wie schon gesagt :

Es gibt unter Windows keinen "Grand Papa" und auch keine "Enkel"
bei eine MDI Anwendung.

gruss by OHR
Jimmy
Antworten