Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Ribbon hide (van Bilsen Lösung) und Menu zeigen (https://www.delphipraxis.net/167295-ribbon-hide-van-bilsen-loesung-und-menu-zeigen.html)

FrankJ28 22. Mär 2012 10:30

Ribbon hide (van Bilsen Lösung) und Menu zeigen
 
Hallo,
hat jemand die van Bilsen-Lösung (Tutorial) im Einsatz und hat das Umschalten zwischen Ribbon-Steuerung und klassischem Menue lösen können? Ribbon.visible=false versteckt zwar das Ribbon, aber das vorher zugewiesene MeinMenue ist leider nicht sichtbar.
Danke und ciao
Frank

himitsu 22. Mär 2012 11:08

AW: Ribbon hide (van Bilsen Lösung) und Menu zeigen
 
Du könntest die Ribbon-Komponente freigeben (Free).

Delphi-Quellcode:
procedure TForm8.Button1Click(Sender: TObject);
begin
  Ribbon1.Free;
  Self.RecreateWnd;
end;

FrankJ28 22. Mär 2012 12:50

AW: Ribbon hide (van Bilsen Lösung) und Menu zeigen
 
Hallo,
ich habe die Variante mit dem abgeleiteten MainForm gewählt.

Code:
TMainForm = class(TUIRibbonForm)
Da ist free nicht so gut ;-)

Ciao
Frank

himitsu 22. Mär 2012 14:45

AW: Ribbon hide (van Bilsen Lösung) und Menu zeigen
 
Tja, wenn die Form direkt als RibbonForm verwendet wird, dann würde ich sagen, daß du das Ribbon dann besser nicht abschalten solltest. :stupid:

FrankJ28 16. Apr 2012 13:16

AW: Ribbon hide (van Bilsen Lösung) und Menu zeigen
 
Hallo,
ich habe das jetzt folgendermaßen gelöst:
Delphi-Quellcode:
 MainForm.Ribbon.Visible:=false;
 MainForm.Ribbon.Height:=0;
 Self.RecreateWnd;
 MainForm.ToolBar1.Visible:=true;
 MainForm.MainMenu1:=MainMenu1;
Dazu musste das Property height allerdings noch schreibbar gemacht werden. Ohne die Höhe 0 bleibt noch ein Restfragment von 30 Pixel übrig.

Das jemand eine Ahnung wie man ein Tab programmtechnisch aktivieren kann? Deaktivieren über die ApplicationModes klappt soweit, bis auf die Tatsache, dass es wohl mindestens ein Tab mit Modes=all geben muss, sonst wird beim Start kein Inhalt gezeigt. Nun möchte ich via Programm ein Tab aktivieren.

Danke und ciao
Frank

himitsu 16. Apr 2012 14:03

AW: Ribbon hide (van Bilsen Lösung) und Menu zeigen
 
Zitat:

Zitat von FrankJ28 (Beitrag 1162100)
Delphi-Quellcode:
MainForm.Ribbon.Visible:=false;
MainForm.Ribbon.Height:=0;
Self.RecreateWnd;
MainForm.ToolBar1.Visible:=true;
MainForm.MainMenu1:=MainMenu1;

Der Code steht in einer Methode von TMainForm?

Dann kommt es auf Folgendes hinus.
Delphi-Quellcode:
Self.Ribbon.Visible:=false;
Self.Ribbon.Height:=0;
Self.RecreateWnd;
Self.ToolBar1.Visible:=true;
Self.MainMenu1:=Self.MainMenu1; // ???


PS: Von innerhalb einer Komponente/Klasse (hier TMainForm) besser niemals auf die externe globale Variable zugreifen.

FrankJ28 16. Apr 2012 14:10

AW: Ribbon hide (van Bilsen Lösung) und Menu zeigen
 
Hi,
ja, hast ja Recht :-). Hier ist glücklicherweise MainForm=self.
Ciao
Frank


Alle Zeitangaben in WEZ +1. Es ist jetzt 22:42 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