Dynamischer Dialog mit Browse
Moderator: Moderatoren
Dynamischer Dialog mit Browse
Hallo,
ich habe einen Dialog, wo man die Grösse jederzeit ändern kann. Darin befindet sich ein Browse. Ich will dass, wenn die Grösse des Dialoges geändert wird, der Browse sich an die Dialoggrösse anpasst, also immer die volle Dialoggrösse verwendet. Wie geht das?
ich habe einen Dialog, wo man die Grösse jederzeit ändern kann. Darin befindet sich ein Browse. Ich will dass, wenn die Grösse des Dialoges geändert wird, der Browse sich an die Dialoggrösse anpasst, also immer die volle Dialoggrösse verwendet. Wie geht das?
- AUGE_OHR
- Marvin
- Beiträge: 12909
- Registriert: Do, 16. Mär 2006 7:55
- Wohnort: Hamburg
- Hat sich bedankt: 19 Mal
- Danksagung erhalten: 46 Mal
Re: Dynamischer Dialog mit Browse
hi,
in "FUNCTION myReSize" sollte du als erstes vergleichen ob sich was
in der Grösse überhaupt geändert hat, dann dieDifferenz berechnen
und die neue Grösse per "o:SetSize(mySize)" setzten. Zu Schluss ein
"o:invalideRec" nicht vergessen.
Da du "nur" 1 Child hast und der das ganze "Fenster" einnimmt must
du nicht viel "berechnen" sondern kannst oDlg:drawingArea:currentSize()
nehmen
gruss by OHR
Jimmy
dazu brauchst du einJanR hat geschrieben: ich habe einen Dialog, wo man die Grösse jederzeit ändern kann. Darin befindet sich ein Browse. Ich will dass, wenn die Grösse des Dialoges geändert wird, der Browse sich an die Dialoggrösse anpasst, also immer die volle Dialoggrösse verwendet. Wie geht das?
Code: Alles auswählen
oDlg:resize := {|aOldSize, aNewSize, self| myReSize(aOldSize, aNewSize,oDlg) }
in der Grösse überhaupt geändert hat, dann dieDifferenz berechnen
und die neue Grösse per "o:SetSize(mySize)" setzten. Zu Schluss ein
"o:invalideRec" nicht vergessen.
Da du "nur" 1 Child hast und der das ganze "Fenster" einnimmt must
du nicht viel "berechnen" sondern kannst oDlg:drawingArea:currentSize()
nehmen
gruss by OHR
Jimmy
- Jan
- Marvin
- Beiträge: 14658
- Registriert: Fr, 23. Sep 2005 18:23
- Wohnort: 49328 Melle
- Hat sich bedankt: 21 Mal
- Danksagung erhalten: 88 Mal
- Kontaktdaten:
Hallo Jan,
zuerst mußt Du die Dialoggröße feststellen. Das ist ganz einfach mit :currentSize().
Dadrauf die Höhe des Browses einzustellen ist ja ganz einfach, Du kannst den Wert aus der Dialoggröße übernehmen, abzüglich irgendwelcher von Dir gewünschten Ränder, Hinweise, Titelzeilen, etc.
In der Breite ist das schon schwieriger. Ich mache das immer so, daß ich eine Breite von 100% annehme, jeder Spalte einen bestimmten Prozentsatz "zuweise", und dann aus der Dialoggröße diesen Prozentsatz herausrechne und in der Spaltenbreite des Browses eintrage. Dabei musst Du die Breite aller bislang erzeugten Spalten mitführen, um den Startpunkt der nächsten Spalte zu erhalten.
Jan
zuerst mußt Du die Dialoggröße feststellen. Das ist ganz einfach mit :currentSize().
Dadrauf die Höhe des Browses einzustellen ist ja ganz einfach, Du kannst den Wert aus der Dialoggröße übernehmen, abzüglich irgendwelcher von Dir gewünschten Ränder, Hinweise, Titelzeilen, etc.
In der Breite ist das schon schwieriger. Ich mache das immer so, daß ich eine Breite von 100% annehme, jeder Spalte einen bestimmten Prozentsatz "zuweise", und dann aus der Dialoggröße diesen Prozentsatz herausrechne und in der Spaltenbreite des Browses eintrage. Dabei musst Du die Breite aller bislang erzeugten Spalten mitführen, um den Startpunkt der nächsten Spalte zu erhalten.
Jan
- Manfred
- Foren-Administrator
- Beiträge: 21200
- Registriert: Di, 29. Nov 2005 16:58
- Wohnort: Kreis Wesel
- Hat sich bedankt: 210 Mal
- Danksagung erhalten: 67 Mal
Hi,
ööhm, sehe ich das hier richtig? 4x der gleiche Beitrag von Jan? Aha, so hast Du es also vor....
ööhm, sehe ich das hier richtig? 4x der gleiche Beitrag von Jan? Aha, so hast Du es also vor....
Gruß Manfred
Mitglied der XUG Osnabrück
Schatzmeister des Deutschsprachige Xbase-Entwickler e.V.
großer Fan des Xbaseentwicklerwiki https://wiki.xbaseentwickler.de/index.p ... Hauptseite
Doof kann man sein, man muß sich nur zu helfen wissen!!
Mitglied der XUG Osnabrück
Schatzmeister des Deutschsprachige Xbase-Entwickler e.V.
großer Fan des Xbaseentwicklerwiki https://wiki.xbaseentwickler.de/index.p ... Hauptseite
Doof kann man sein, man muß sich nur zu helfen wissen!!
- Martin Altmann
- Foren-Administrator
- Beiträge: 16517
- Registriert: Fr, 23. Sep 2005 4:58
- Wohnort: Berlin
- Hat sich bedankt: 111 Mal
- Danksagung erhalten: 48 Mal
- Kontaktdaten:
Hallo Manfred,
keine Sorge, bin schon am Aufräumen!
Ist sicherlich nur wegen der guten Performance...
Viele Grüße,
Martin
keine Sorge, bin schon am Aufräumen!
Ist sicherlich nur wegen der guten Performance...
Viele Grüße,
Martin
Webseite mit XB2.NET und ausschließlich statischem Content in Form von HTML-Dateien: https://www.altem.de/
Webseite mit XB2.NET und ausschließlich dynamischem Content in Form von in-memory-HTML: https://meldungen.altem.de/
Mitglied der XUG Osnabrück
Vorsitzender des Deutschsprachige Xbase-Entwickler e. V.
- Jan
- Marvin
- Beiträge: 14658
- Registriert: Fr, 23. Sep 2005 18:23
- Wohnort: 49328 Melle
- Hat sich bedankt: 21 Mal
- Danksagung erhalten: 88 Mal
- Kontaktdaten:
Hey Manfred,
nicht alle machen das so plump wie Du Ich rede mich jetzt ganz elegant mit dem blöden Server raus, der einfach immer einen Fehler 500 rausgegeben hat, und dann habe ich eben einfach nur auf F5 Aktualisieren gedrückt.
Aber im Ernst: Wenn einer der der Moderaten da vielleicht ein wenig löschend tätig werden könnte? Vielen Dank.
Jan
nicht alle machen das so plump wie Du Ich rede mich jetzt ganz elegant mit dem blöden Server raus, der einfach immer einen Fehler 500 rausgegeben hat, und dann habe ich eben einfach nur auf F5 Aktualisieren gedrückt.
Aber im Ernst: Wenn einer der der Moderaten da vielleicht ein wenig löschend tätig werden könnte? Vielen Dank.
Jan
- Martin Altmann
- Foren-Administrator
- Beiträge: 16517
- Registriert: Fr, 23. Sep 2005 4:58
- Wohnort: Berlin
- Hat sich bedankt: 111 Mal
- Danksagung erhalten: 48 Mal
- Kontaktdaten:
Hallo Jan,
ist bereits geschehen!
Viele Grüße,
Martin
ist bereits geschehen!
Viele Grüße,
Martin
Webseite mit XB2.NET und ausschließlich statischem Content in Form von HTML-Dateien: https://www.altem.de/
Webseite mit XB2.NET und ausschließlich dynamischem Content in Form von in-memory-HTML: https://meldungen.altem.de/
Mitglied der XUG Osnabrück
Vorsitzender des Deutschsprachige Xbase-Entwickler e. V.