Wie Reihenfolge der Pages in TNotebook ändern ?
Wie Reihenfolge der Pages in TNotebook ändern ?
Hallo,
weiß jmd ob und wenn ja wie es möglich ist die Reihenfolge der Pages in einem TNotebook zu ändern ?
Ich möchte z.B. Page2 mit Page3 tauschen und dann auch Page2 über "Notebook1.PageIndex:= 2; " zeigen können.
Viele Grüße
weiß jmd ob und wenn ja wie es möglich ist die Reihenfolge der Pages in einem TNotebook zu ändern ?
Ich möchte z.B. Page2 mit Page3 tauschen und dann auch Page2 über "Notebook1.PageIndex:= 2; " zeigen können.
Viele Grüße
- Dateianhänge
-
- Unbenannt.PNG (3.86 KiB) 1400 mal betrachtet
- m.fuchs
- Lazarusforum e. V.
- Beiträge: 2808
- Registriert: Fr 22. Sep 2006, 19:32
- OS, Lazarus, FPC: Winux (Lazarus 2.0.10, FPC 3.2.0)
- CPU-Target: x86, x64, arm
- Wohnort: Berlin
- Kontaktdaten:
Re: Wie Reihenfolge der Pages in TNotebook ändern ?
Eine Änderung über eine Funktion in Lazarus habe ich seinerzeit auch nicht machen können. Allerdings habe ich auch mangels Interesse nicht weitergeforscht.
Als Workaround kannst du die .lfm-Datei zu deinem Form bearbeiten und die einzelnen Pages verschieben.
Aus
wird dann
Als Workaround kannst du die .lfm-Datei zu deinem Form bearbeiten und die einzelnen Pages verschieben.
Aus
Code: Alles auswählen
object Form1: TForm1
Left = 407
Height = 536
Top = 132
Width = 757
Caption = 'Form1'
ClientHeight = 536
ClientWidth = 757
LCLVersion = '1.0.12.0'
object Notebook1: TNotebook
Left = 176
Height = 226
Top = 144
Width = 336
PageIndex = 0
TabOrder = 0
TabStop = True
object Page1: TPage
object Button1: TButton
Left = 108
Height = 25
Top = 73
Width = 75
Caption = 'Button1'
TabOrder = 0
end
end
object Page2: TPage
object Button2: TButton
Left = 127
Height = 25
Top = 77
Width = 75
Caption = 'Button2'
OnClick = Button1Click
TabOrder = 0
end
end
end
end
Code: Alles auswählen
object Form1: TForm1
Left = 407
Height = 536
Top = 132
Width = 757
Caption = 'Form1'
ClientHeight = 536
ClientWidth = 757
LCLVersion = '1.0.12.0'
object Notebook1: TNotebook
Left = 176
Height = 226
Top = 144
Width = 336
PageIndex = 0
TabOrder = 0
TabStop = True
object Page2: TPage
object Button2: TButton
Left = 127
Height = 25
Top = 77
Width = 75
Caption = 'Button2'
OnClick = Button1Click
TabOrder = 0
end
end
object Page1: TPage
object Button1: TButton
Left = 108
Height = 25
Top = 73
Width = 75
Caption = 'Button1'
TabOrder = 0
end
end
end
end
Software, Bibliotheken, Vorträge und mehr: https://www.ypa-software.de
Re: Wie Reihenfolge der Pages in TNotebook ändern ?
Ändern kannst Du diese wie folgt: im Formular mit einem Rechtsklick auf das TNotebook (wenn die zu verschiebende Page sichtbar ist) klicken und dort unter Z-Reihenfolge diese nach vorn oder hinten verschieben. Zur Laufzeit sind dann die Pages entsprechend über Page[Index] abrufbar. Allerdings werden die Pages im Objektinspektor nicht entsprechend angezeigt, sodaß mir eine eigene Logik bei vielen Pages sinnvoller erscheint.
Code: Alles auswählen
type
TLiveSelection = (lsMoney, lsChilds, lsTime);
TLive = Array[0..1] of TLiveSelection;
- m.fuchs
- Lazarusforum e. V.
- Beiträge: 2808
- Registriert: Fr 22. Sep 2006, 19:32
- OS, Lazarus, FPC: Winux (Lazarus 2.0.10, FPC 3.2.0)
- CPU-Target: x86, x64, arm
- Wohnort: Berlin
- Kontaktdaten:
Re: Wie Reihenfolge der Pages in TNotebook ändern ?
Michl: Das ändert bei mir (1.0.12) hingegen die Darstellung im Objektinspektor, aber nicht der Zuordnung von PageIndex.
Software, Bibliotheken, Vorträge und mehr: https://www.ypa-software.de
Re: Wie Reihenfolge der Pages in TNotebook ändern ?
Das ist aber lustig, ich sitze gerade am Laptop und habe hier auch noch 1.0.12 und darauf getestet. Ist bei mir genau anders herum. Hast Du wirklich die Z-Reihenfolge nicht im Objektinspektor sondern in der Form mit einem Rechtsklick auf die Page geändert?m.fuchs hat geschrieben:Michl: Das ändert bei mir (1.0.12) hingegen die Darstellung im Objektinspektor, aber nicht der Zuordnung von PageIndex.
Code: Alles auswählen
type
TLiveSelection = (lsMoney, lsChilds, lsTime);
TLive = Array[0..1] of TLiveSelection;
- m.fuchs
- Lazarusforum e. V.
- Beiträge: 2808
- Registriert: Fr 22. Sep 2006, 19:32
- OS, Lazarus, FPC: Winux (Lazarus 2.0.10, FPC 3.2.0)
- CPU-Target: x86, x64, arm
- Wohnort: Berlin
- Kontaktdaten:
Re: Wie Reihenfolge der Pages in TNotebook ändern ?
Ich wusste nicht dass das einen Unterschied macht. Bringt aber auch nichts, es sei denn: ich speichere, schließe Lazarus und öffne das Projekt wieder.
So oder so erscheint mir das reichlich unhandlich und fehleranfällig. Da würde ich an der Reihenfolge lieber gar nichts machen.
So oder so erscheint mir das reichlich unhandlich und fehleranfällig. Da würde ich an der Reihenfolge lieber gar nichts machen.
Software, Bibliotheken, Vorträge und mehr: https://www.ypa-software.de
Re: Wie Reihenfolge der Pages in TNotebook ändern ?
Das habe ich eben probiert. Das hat sogar den Vorteil, dass nach dem Schließen und wieder Öffnen von Lazarus sogar die Pages im Objektinspektor in der neu definierten Reihenfolge angezeigt werden (falls Du das meintest).m.fuchs hat geschrieben:Bringt aber auch nichts, es sei denn: ich speichere, schließe Lazarus und öffne das Projekt wieder.
Man müsste den Objektinspektor nach Änderung der Z-Reihenfolge noch irgendwie updaten (evtl. ein Bugreport/Feature-Request dazu machen?)...
+1m.fuchs hat geschrieben:Da würde ich an der Reihenfolge lieber gar nichts machen.
Michl hat geschrieben:... sodaß mir eine eigene Logik bei vielen Pages sinnvoller erscheint.
Code: Alles auswählen
type
TLiveSelection = (lsMoney, lsChilds, lsTime);
TLive = Array[0..1] of TLiveSelection;
Re: Wie Reihenfolge der Pages in TNotebook ändern ?
TNotebook hat mich bei Delphi immer genervt wegen der komplizierten Handhabung (möglicherweise ist es hier bei Lazarus einfacher?). Praktischer ist ein TPageControl, bei dem man zur Laufzeit, z.B. im FormCreate-Ereignis, alle Tabs auf TabVisible = false schaltet. Zur Designzeit hat man aber die volle Funktionalität des PageControl.
- m.fuchs
- Lazarusforum e. V.
- Beiträge: 2808
- Registriert: Fr 22. Sep 2006, 19:32
- OS, Lazarus, FPC: Winux (Lazarus 2.0.10, FPC 3.2.0)
- CPU-Target: x86, x64, arm
- Wohnort: Berlin
- Kontaktdaten:
Re: Wie Reihenfolge der Pages in TNotebook ändern ?
Das TNotebook ist aber randlos. Es gibt Fälle wo das wichtig sein könnte.
Software, Bibliotheken, Vorträge und mehr: https://www.ypa-software.de