AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren

Schriftart bei TMainMenu änderbar?

Ein Thema von ptown67 · begonnen am 25. Feb 2008 · letzter Beitrag vom 2. Jun 2009
Antwort Antwort
Benutzerbild von ptown67
ptown67

Registriert seit: 31. Jan 2006
Ort: Keine Ergebnisse gefunden
60 Beiträge
 
Delphi 7 Personal
 
#1

Schriftart bei TMainMenu änderbar?

  Alt 25. Feb 2008, 15:04
Servus Delphi-Freaks!

Ich arbeite zur Zeit an einem Browser. Klappt alles bestens. Bin schon fast fertig damit. Für die letzten Feinheiten, könnt ich jedoch noch folgende Info gebrauchen:

Ich habe dem gesamten Projekt die Schriftart 'Verdana' zugewiesen. Jedoch ist die Schriftart im MainMenü immer noch unverändert. Auch im Objektinspektor lässt sich das nicht festlegen.

Kann mir jemand einen Tipp geben, wie ich im MainMenü die Schriftart Verdana verwenden kann?

Danke für Eure Antworten...

Gruß
ptown67 @ www.se-world.info
  Mit Zitat antworten Zitat
Benutzerbild von Union
Union

Registriert seit: 18. Mär 2004
Ort: Luxembourg
3.492 Beiträge
 
Delphi 7 Enterprise
 
#2

Re: Schriftart bei TMainMenu änderbar?

  Alt 25. Feb 2008, 15:32
Dazu musst Du OwnerDraw des Hauptmenüs auf True setzen und dann jedes Menüelement neu dimensionieren und zeichnen (TMenuItem.OnDrawItem, OnMeasureItem):

Delphi-Quellcode:
procedure TForm1.MenuDrawItem(Sender: TObject; ACanvas: TCanvas;
  ARect: TRect; Selected: Boolean);
begin
   ACanvas.Font.Name := 'Verdana';
   ACanvas.Font.Size := 15;
   ARect.Left := 4;
   DrawText(ACanvas.Handle, PChar(TMenuItem(Sender).Caption), -1, ARect, DT_LEFT or DT_VCENTER or DT_SINGLELINE or DT_NOCLIP);
end;

procedure TForm1.MenuMeasureItem(Sender: TObject;
  ACanvas: TCanvas; var Width, Height: Integer);
var
   Size : TSize;
begin
   ACanvas.Font.Name := 'Verdana';
   ACanvas.Font.Size := 15;
   Size := ACanvas.TextExtent(StripHotkey(TMenuItem(Sender).Caption));
   Width := Size.cx;
   Height := Size.cy;
end;
Ibi fas ubi proxima merces
sudo /Developer/Library/uninstall-devtools --mode=all
  Mit Zitat antworten Zitat
Benutzerbild von SirThornberry
SirThornberry
(Moderator)

Registriert seit: 23. Sep 2003
Ort: Bockwen
12.235 Beiträge
 
Delphi 2006 Professional
 
#3

Re: Schriftart bei TMainMenu änderbar?

  Alt 25. Feb 2008, 15:37
Ich würde dir empfehlen generell auf Verdana zu verzichten und die Einstellungen des Users zu respektieren. Einige Nutzer wählen ihre Schriftart danach aus das sie auf dem Monitor gut lesbar ist bzw. überhaupt lesbar für den Nutzer. Wenn ein Nutzer eine andere Schriftart wünsch kann er das in seinem Windows umstellen.
Jens
Mit Source ist es wie mit Kunst - Hauptsache der Künstler versteht's
  Mit Zitat antworten Zitat
Benutzerbild von ptown67
ptown67

Registriert seit: 31. Jan 2006
Ort: Keine Ergebnisse gefunden
60 Beiträge
 
Delphi 7 Personal
 
#4

Re: Schriftart bei TMainMenu änderbar?

  Alt 25. Feb 2008, 15:50
Danke für die Antworten!

@ Union:

Hat funktioniert

Gruß
ptown67 @ www.se-world.info
  Mit Zitat antworten Zitat
J Kadison

Registriert seit: 8. Sep 2007
Ort: Ebertsheim
96 Beiträge
 
Delphi 7 Personal
 
#5

Re: Schriftart bei TMainMenu änderbar?

  Alt 1. Jun 2009, 21:10
Hey Ich würde gerne das Thema noch einmal aufgreifen. Bis dahin funktioniert das Alles auch super bei mir.

Mein Problem allerdings ist, ich möchte jetzt vor den Text noch ein Bitmap legen, das ich vorher meinem TMenuItem zugewiesen habe. wie kann ich das denn noch per Canvas da rein malen? Ich blicke den QT im moment garnicht . . . wo ich da noch was rein schmieren könnte

Achjaaa, und warum ist jetzt immer der erste Buchstabe unterstrichen? wie bekomm ich das denn wieder normal?

Sorry wenn die fragen jetzt en bisschen trivial sind, aber ich steh voll aufm schlauch

[edit] meine Rechtschreibung is so ne sache [/edit]
MFG
Joshi
  Mit Zitat antworten Zitat
Gribbelfix

Registriert seit: 15. Apr 2009
Ort: ~Osnabrück
3 Beiträge
 
Delphi 2007 Professional
 
#6

Re: Schriftart bei TMainMenu änderbar?

  Alt 1. Jun 2009, 22:01
Zumindest hierzu ganz schnell eine Kurzantwort:
Zitat:
Achjaaa, und warum ist jetzt immer der erste Buchstabe unterstrichen? wie bekomm ich das denn wieder normal?
Das sind die sogenannten Acclerator-Keys (Schnellzugriffstasten), d.h. mit Alt + UnterstrichenerBuchstabe kann dieser Menüpunkt dann aufgerufen werden.
Probier mal die Eigenschaft AutoHotkeys auf maManual zu stellen, dann werden hier keine automatischen Menüzuordnungen mit den Acclerator-Keys erstellt. An sich ist es aber eher eine praktische Sache...

Andreas
Andreas
  Mit Zitat antworten Zitat
J Kadison

Registriert seit: 8. Sep 2007
Ort: Ebertsheim
96 Beiträge
 
Delphi 7 Personal
 
#7

Re: Schriftart bei TMainMenu änderbar?

  Alt 2. Jun 2009, 20:37
Soo das Problem mit den "Acclerator-Keys" ist gelöst wie sieht es denn jetzt noch mit den bildern aus? Hat dafür noch jemand ne lösung?
MFG
Joshi
  Mit Zitat antworten Zitat
Benutzerbild von Luckie
Luckie

Registriert seit: 29. Mai 2002
37.621 Beiträge
 
Delphi 2006 Professional
 
#8

Re: Schriftart bei TMainMenu änderbar?

  Alt 2. Jun 2009, 21:20
Da wo du den Text für den Menüeintrag ausgibst, zeichnest du eben noch das Icon oder Bitmap davor.
Michael
Ein Teil meines Codes würde euch verunsichern.
  Mit Zitat antworten Zitat
Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
Ansicht

Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 04:31 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