Form_Resize bekommt Änderung nicht mit

Alle Fragen zur Programmierung, die nicht in die speziellen Themen passen
Antworten
EUP
Foriker
Beiträge: 67
Registriert: So 4. Aug 2013, 09:11
Kontaktdaten:

Form_Resize bekommt Änderung nicht mit

Beitrag von EUP » Sa 30. Dez 2017, 21:36

Hallo,

in meinem Programm habe ich eine Form (Resizeable = true), welche jedoch nicht unter eine bestimmte Größe verkleinerbar sein soll.

Dazu habe ich

Public Sub Form_Resize()
If Me.Width < 840 Then
Me.Width = 840
Endif

If Me.Height < 580 Then
Me.Height = 580
Endif

Me.Text = Str(Me.Height) <---- Temporär zur Kontrolle

Gebrösel anpasen
Gebrösel anpasen
End

Das Fenster kann ich trotzdem praktisch komplett 'zuschieben'. In der Titelleiste bleibt 580 stehen, auch das Gebrösel wird nicht mehr angepasst.

Erst wenn ich den Verkleinerungsvorgang beende und das Fenster leicht verschiebe, scheint er zu merken, dass da was passiert ist und setzt das Fenster so wie er soll.

QT oder GTK ist egal, klappt bei beiden nicht.

Ein anderes Fenster kann ich nicht unter die Startgröße verkleinern.

Auf welchem Auge bin ich da blind…

Dank im Voraus

besenmuckel
Foriker
Beiträge: 86
Registriert: Di 4. Nov 2014, 21:11
Kontaktdaten:

Re: Form_Resize bekommt Änderung nicht mit

Beitrag von besenmuckel » So 31. Dez 2017, 09:53

Wenn ich am Ende bei Form_Resize noch dies einfüge dann geht es, vielleicht gibt es eine bessere Lösung. Me.Refresh kann man auch weglassen.

Code: Alles auswählen

Me.Refresh
Wait 0.03
Me.Show
Zuletzt geändert von besenmuckel am Mo 1. Jan 2018, 14:46, insgesamt 1-mal geändert.

Benutzeravatar
gambi
Moderator
Beiträge: 319
Registriert: Mi 8. Mai 2013, 21:46
Kontaktdaten:

Re: Form_Resize bekommt Änderung nicht mit

Beitrag von gambi » So 31. Dez 2017, 13:33

Hallo EUP,
das scheint in der Tat ein nicht so einfach zu sein.

Ergänzend zu besenmuckels Ansatz, genügt hier das me.show. Wenn du wait einsetzt, kommt es irgendwann zum Stapelüberlauf.

Wenn dein zweites Fenster im Modal-Modus gestartet wurde, lässt es sich nicht kleiner schieben als anfänglich definiert. Siehe hier z.B.
http://gambas.8142.n7.nabble.com/Form-R ... tml#a27090 (modal forms cannot be shrinked smaller than
their initial size. It is feature, not a bug. )

gg

gambasso
Foriker
Beiträge: 923
Registriert: Sa 17. Mär 2012, 09:55
Kontaktdaten:

Re: Form_Resize bekommt Änderung nicht mit

Beitrag von gambasso » Mo 1. Jan 2018, 11:33

moin,

wie wäre es mit 'Mouse_Move', da könnstet Du alles reinbringen.
Gruss

EUP
Foriker
Beiträge: 67
Registriert: So 4. Aug 2013, 09:11
Kontaktdaten:

Re: Form_Resize bekommt Änderung nicht mit

Beitrag von EUP » Mo 1. Jan 2018, 16:20

Dank an Alle,

habe es aufgegeben und die Form so angepasst, dass sie auch kleiner werden kann, ab einer bestimmten Größe ist es dann zwar absolut sinnfrei, weil die Steuerelemente nicht mehr passen, da muss man dann halt eben mit leben.

Besser wäre da wohl der VB.Net Ansatz, bei dem man direkt in den Eigenschaften Min- und Max-Größen für eine Form festlegen kann - aber wat nich is, dat is nich…

Die Sache mit dem zweiten Fenster hatte ich mir schon gedacht, das Problem, welches ich hatte, konnte ich dadurch lösen, indem ich die gespeicherten Fenstermaße in einer anderen Ereignisprocedure zuwies, nimmt man da nämlich die Falsche, kann man solcherlei Fenster nur noch vergrößern - man kommt dann auch nicht mehr auf die ursprüngliche Designgröße zurück (die letzte Betriebsgröße bildet dann die neue Mindestgröße - böse Falle).

Nebenbei ein frohes neues Jahr

Antworten

Wer ist online?

Mitglieder in diesem Forum: Google [Bot] und 8 Gäste