Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Object-Pascal / Delphi-Language (https://www.delphipraxis.net/32-object-pascal-delphi-language/)
-   -   Delphi Ein simples Tabsheet zuweisen... (https://www.delphipraxis.net/209062-ein-simples-tabsheet-zuweisen.html)

Delbor 20. Okt 2021 13:22

Delphi-Version: 10.4 Sydney

Ein simples Tabsheet zuweisen...
 
Hi zusammen
In einem Popupfenster will ich verschiedene Infos anzeigen. Aktuell die Grösse der vorhandenen Laufwerke, um nach freier Wahl (oder dem mit dem grössten freien Speicher) eine Datenbank anzulegen. Zu dem Zweck habe ich einer Form den

Delphi-Quellcode:
function TDMLSQLiteOfficerFE.DedectBiggestFreeSpace: Char;
  var i :integer; PopupWindow: TPopupWindow;
begin
  PopupWindow := TPopupWindow.Create(Self);
  PopupWindow.PopupMode := pmExplicit;
  PopupWindow.PopupParent := HomeOfficerFeMain;
  PopupWindow.RzPageControl1.ActivePage := 'TabSheet1';
end;
Normalerweise war Activepage immer durch die übergabe einesStrings gesetzt. Hier funktioniert das offensichtlich nicht. Ich hab schon versucht, einen integer oder eine Klasse (TRzTabsheet) zu übergeben - nichts. Waas mache ich falsch?

Gruss
Delbor

TiGü 20. Okt 2021 13:24

AW: Ein simples Tabsheet zuweisen...
 
Immer wenn ich Probleme mit Sichtbarkeiten mit dynamisch zugewiesenen visuellen Komponenten habe, dann habe ich die Parent-Eigenschaft vergessen.

Delbor 20. Okt 2021 13:55

AW: Ein simples Tabsheet zuweisen...
 
Hi Tigü

Oh Mann, bin ich vielleicht erleichtert - und dabei hab ich mich schon nach einem Mausloch umgesehen, um mich möglichst tief zu verstecken...

Meine Lösung bisher:

Delphi-Quellcode:
PopupWindow.RzPageControl1.ActivePage := PopupWindow.RzPageControl1.Pages[0];

Also wirklich explizites Adressieren der Pagesmit dem entsprechenden Index.

Soviel ich mich mag erinnern, funktioniert die Zuweisung über den Namen/Caption so beim originalen Delphi-PageControl. Wieso das so bei den Raize-Komponenten nicht geht, ist mir ein Rätsel. Allerdings gehe ich schon davon aus,dass beide den selben Vorfahren haben. (TCustomPageContol).

Gruss
Delbor

Uwe Raabe 20. Okt 2021 14:54

AW: Ein simples Tabsheet zuweisen...
 
Zitat:

Zitat von Delbor (Beitrag 1496333)
Allerdings gehe ich schon davon aus,dass beide den selben Vorfahren haben. (TCustomPageContol).

Eher nicht:
Delphi-Quellcode:
TRzCustomTabControl = class( TCustomControl )
TRzPageControl = class( TRzCustomTabControl )
Funktioniert aber bei TPageControl auch nicht und ein TCustomPageControl gibt es gar nicht.

Zitat:

Zitat von Delbor (Beitrag 1496333)
Delphi-Quellcode:
PopupWindow.RzPageControl1.ActivePage := PopupWindow.RzPageControl1.Pages[0];

Einfacher wäre vielleicht:
Delphi-Quellcode:

PopupWindow.RzPageControl1.ActivePageIndex := 0;
Funktioniert übrigens bei TPageControl und TRzPageControl.

Delbor 20. Okt 2021 16:49

AW: Ein simples Tabsheet zuweisen...
 
Hi zusammen

Herzlichen Dank für eure Antworten.


@Uwe Raabe: Ja richtig, und Zeit hätte ich mir auch gespaart.

Gruss
Delbor


Alle Zeitangaben in WEZ +1. Es ist jetzt 05:08 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz