Delphi-PRAXiS
Seite 2 von 2     12   

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Multimedia (https://www.delphipraxis.net/16-multimedia/)
-   -   Delphi MainMenü Schriftgröße ändern (https://www.delphipraxis.net/84160-mainmenue-schriftgroesse-aendern.html)

marabu 12. Feb 2007 10:20

Re: MainMenü Schriftgröße ändern
 
Hallo Robert,

ich stehe weiterhin zu meinem Beitrag #6 - aber wenn du die Komponente ActionMainMenuBar einsetzt, dann werden nicht unbedingt die Systemeinstellungen für das Zeichnen des Hauptmenüs verwendet:

Delphi-Quellcode:
procedure TMainForm.FormCreate(Sender: TObject);
begin
  // ActionMainMenuBar.Font.Assign(Screen.MenuFont); // use system settings
  ActionMainMenuBar.Font.Assign(Font); // use form settings
end;
Dein Weg führt aber eher zu mehr Problemen bei sehbehinderten Benutzern, da sie dann die in Windows immer weiter ausgebauten Erleichterungen (accessibility features) nicht für deine Anwendung nutzen können. Besser ist es seine Anwendung auf korrektes Verhalten zu testen, wenn entsprechende Einstellungen im Hilfe-Center (Eingabehilfen --> Funktionen für Benutzer mit stark eingeschränkter ... Sehkraft) gemacht werden. Nur so tust du wirklich etwas für die Barrierefreiheit.

Freundliche Grüße

binio 12. Feb 2007 11:07

Re: MainMenü Schriftgröße ändern
 
Danke für die schnelle Antwort nur habe ich ein Problem beim einbinden.
Code:
procedure TForm1.FormCreate(Sender: TObject);
begin
  ActionMainMenuBar.font.Assign(20);
  mainmenu1.font.assign(20);
  ...
Code:
ActionMainMenuBar.font.Assign(20);
führt zu
Code:
[Pascal Error] Unit1.pas(582): E2003 Undeclared identifier: 'ActionMainMenuBar'
und
Code:
mainmenu1.font.assign(20);
zu
Code:
[Pascal Error] Unit1.pas(584): E2003 Undeclared identifier: 'font'
Meine Menübar trägt den Namen "Mainmenu1". Was mache ich den da jetzt falsch ?

Rob

marabu 12. Feb 2007 11:16

Re: MainMenü Schriftgröße ändern
 
TMainMenu ist etwas anderes als TActionMainMenuBar. Bei meiner Delphi-Version sind die Action-Komponenten auf der Palettenseite "Zusätzlich" installiert. Font.Assign(20) ist einfach nur falsch - du setzt die Standard-Schriftgröße beim Font deiner MainForm und übernimmst diesen Font so wie ich es dir gezeigt habe.

Freundliche Grüße

binio 13. Feb 2007 14:04

Re: MainMenü Schriftgröße ändern
 
Dein Tipp mit den ActionMainMenuBar ist Gold Wert :)
Damit klappt es auch. Nur hab ich jetzt ein anderes Problem.
Ich habe da die möglichkeit den BiDiMode auf bdLeftToRight zu stellen.
Wenn ich dies tuh und dann Kompiliere macht er aber von Rechts nach Links die Aufzählung der Menüeinträge
Wenn ich dann das Projekt schliesse und neu auf mache steht jedesmal unter BiDiMode bdRightToLeft.
Wpran kann das liegen ?

Rob

marabu 14. Feb 2007 08:06

Re: MainMenü Schriftgröße ändern
 
Hallo,

das kommt mir spanisch vor. Warum musst du ActionMainMenuBar.BidiMode überhaupt auf bdLeftToRight setzen? Es ist doch der Standardwert. Arbeitest du überhaupt mit dieser Eigenschaft - eventuell an anderen Stellen? Überprüfe das Verhalten mit einem Leerprojekt, in welchem du nur ActionMainMenuBar und ActionManager verwendest. So kannst du feststellen, ob das Problem von deinem eigenen Code abhängig ist.

Freundliche Grüße

binio 14. Feb 2007 13:17

Re: MainMenü Schriftgröße ändern
 
Joe ich hatte eine Globale Variable ParentBiDiMode auf False gesetzt gehabt. Nunr geht es.
Aber jetzt kommt das beste. Ich nutze Delphi 10 und mein Chef Delphi 6. in Delphi 6 kennt er die XPStyleActnCtrls.pas nicht und wenn ich mein Chef meine gebe gibt es ein Versionskonflikt.
Naja das wars dann wohl für mich mit der Idee.
Wenn ich die von Delphi 6 mitgelieferte TActionMainMenuBar nutze hat mein Chef der Blind ist nicht die möglichkeit diese mit einer Braillezeile zu lesen da auf der menüleite kein echter Focus ist.
Ok ich denke euch für die Hilfe ich werd nun gucken das wie die Delphi 10 erwerben oder vieleicht noch jemanden was einfällt wie man mein Problem auf andere weise lösen kann.

Danke vielmal
Rob

binio 5. Jun 2007 11:54

Re: MainMenü Schriftgröße ändern
 
Wir haben uns die neuste Version on Borland gekauft und nun können wir ActionMaineMenüs nutzen.
Eine frage ist jetzt aber offen.
In den Menüeinträgen wird ja die schrift der einzelnen Elemente durch
Delphi-Quellcode:
ActionMainMenuBar1.Font.Assign(Font);
bestimmt. Das heist wenn Font auf 20 ist sind die einzelnen Elemente von Actionmainemenü auch in der Schriftgröße. Aber das blöde ist das die einzlenen Elemente von der Höhe zu klein sind und dadurch der Text nicht ganz dargestellt werden kann.
Wo kann ich da Werte für setzen das die Menüeinträge in der Höhe größer sind ??

Danke schonmal im vorraus !!!


Alle Zeitangaben in WEZ +1. Es ist jetzt 23:43 Uhr.
Seite 2 von 2     12   

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