Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   GUI-Design mit VCL / FireMonkey / Common Controls (https://www.delphipraxis.net/18-gui-design-mit-vcl-firemonkey-common-controls/)
-   -   Delphi TMainMenu - Farbe eines Menüs ändern (https://www.delphipraxis.net/75258-tmainmenu-farbe-eines-menues-aendern.html)

3_of_8 16. Aug 2006 19:31


TMainMenu - Farbe eines Menüs ändern
 
Morgen.

Ich hab ein TMainMenu und möchte die Farbe des Menübalkens ändern. Gibts dafür eventuell eine WinAPI-Funktion oder sowas?

Flocke 16. Aug 2006 19:47

Re: TMainMenu - Farbe des Menübalkens ändern
 
Vielleicht hilft dir das hier.

3_of_8 16. Aug 2006 21:24

Re: TMainMenu - Farbe des Menübalkens ändern
 
Erm, und bei den MenuItems? Ich habs mit OwnerDraw versucht, aber da hab ich das Problem, dass ARect mir das falsche Rechteck liefert, nämlich das Begrenzungsrechteck der Schrift und nicht des Menüeintrages.

Außerdem muss ich da ne Menge Arbeit selber machen, wie z.B. das Zeichnen von Trennlinien und Schnellzugriffstasten (Das mit dem &).

s.h.a.r.k 16. Aug 2006 21:31

Re: TMainMenu - Farbe eines Menüs ändern
 
Ist zwar keine direkte Antwort auf deine Frage, aber wie wärs mit Toolbar2000 und TBX???

3_of_8 16. Aug 2006 21:33

Re: TMainMenu - Farbe eines Menüs ändern
 
Äääh, Toolbar? Ich such ne Menükomponente...

Und TBX sagt mir nix...

Muetze1 16. Aug 2006 21:33

Re: TMainMenu - Farbe des Menübalkens ändern
 
Zitat:

Zitat von 3_of_8
Erm, und bei den MenuItems? Ich habs mit OwnerDraw versucht, aber da hab ich das Problem, dass ARect mir das falsche Rechteck liefert, nämlich das Begrenzungsrechteck der Schrift und nicht des Menüeintrages.

Du bekommst immer das Rechteck des gesamten MenuItems. Du musst auch beachten, dass du das OnMeasureItem entsprechend bedienst.

Zitat:

Zitat von 3_of_8
Außerdem muss ich da ne Menge Arbeit selber machen, wie z.B. das Zeichnen von Trennlinien und Schnellzugriffstasten (Das mit dem &).

Was ist das Problem bei einer Linie? Und bei den Schnellzugriffstasten gibt dir die WinAPI doch alles zur Hand: siehe DrawText().

Wo liegt denn nun genau dein Problem?

3_of_8 16. Aug 2006 21:36

Re: TMainMenu - Farbe eines Menüs ändern
 
OK, gute Idee.

Vielleicht sollte ich nicht OnAdvancedDrawItem, sondern OnDrawItem überschreiben.

3_of_8 16. Aug 2006 22:08

Re: TMainMenu - Farbe eines Menüs ändern
 
Grmpf...

Also ich hab da ein Problem.

Der Rand bleibt immer noch da.

Und bei Radiomenuitems oder wie die Dinger heißen wird das OnItemDraw gar ned aufgerufen.

Meflin 16. Aug 2006 23:22

Re: TMainMenu - Farbe eines Menüs ändern
 
Zitat:

Zitat von 3_of_8
Und TBX sagt mir nix...

Dafür gäbe es ja so grandios-geniale Dinge wie Hier im Forum suchenTBX oder Bei Google suchenToolbar 2000 TBX


Muetze1 16. Aug 2006 23:52

Re: TMainMenu - Farbe eines Menüs ändern
 
Zitat:

Zitat von 3_of_8
Der Rand bleibt immer noch da.

Welcher Rand? In dem o.g. Link sieht man ja, dass ich keinen Rand habe - ich benutze aber AdvancedDrawItem. Welchen Rand meinst du bzw. hast du noch übrig? Ansonsten wie schon erwähnt TBX.

3_of_8 16. Aug 2006 23:54

Re: TMainMenu - Farbe eines Menüs ändern
 
Ääähm, TBX ist eine Toolbar 2000-Erweiterung und diese Toolbar 2000 wiederum kostet eine nicht zu verachtende Menge Geld.

Flocke 16. Aug 2006 23:56

Re: TMainMenu - Farbe eines Menüs ändern
 
Zitat:

Zitat von 3_of_8
Äääh, Toolbar? Ich such ne Menükomponente...

...ist es doch :???:

Auch in Office 2003 z.B. ist die Menüleiste in Wirklichkeit eine Toolbar, und man kann TBX fast so aussehen lassen wie die vom Office.

Screenshots:
http://www.rmklever.com/tbximages/blue.png
http://www.rmklever.com/tbximages/rmkThemes.png

Mein Installations-Tutorial:
http://flocke.vssd.de/prog/howto/insttbx/

// Nachtrag

Hier die Lizenzbedingungen zu Toolbar2000 - es ist kostenlos, wenn dein Programm der GPL unterliegt. Allerdings hat er in seiner Newsgroup auch schon geschrieben, dass es ausreicht, wenn das Programm nicht kommerziell ist.

Zitat:

Zitat von LICENSE.txt
All files included in the Toolbar2000 archive are Copyright (C) 1998-2005
Jordan Russell.

Use and/or distribution of the files requires compliance with the
"Toolbar2000 License", found in TB2k-LICENSE.txt or at:

http://www.jrsoftware.org/files/tb2k/TB2k-LICENSE.txt

Alternatively, at your option, the files may be used and/or distributed under
the terms of the "GNU General Public License", found in GPL-LICENSE.txt or at:

http://www.jrsoftware.org/files/tb2k/GPL-LICENSE.txt

NOTE: If you choose the GPL license option, your application as a whole must
also be licensed under the GPL. (Refer to section 2b of the GPL license.)
Therefore, you cannot choose the GPL license option if your application is
proprietary/closed-source.

// Noch'n Nachtrag

Hier die entsprechende Stelle aus der anderen Datei:

Zitat:

Zitat von TB2k-LICENSE.txt
5. You are permitted to Compile the Software into any kind of applications.
("Compile" here refers to the automatic process of translating the
Software's source code into executable machine code by a compiler such
as the one included with Borland's Delphi or C++Builder.)
However, compilation into commercial or shareware applications, or any
applications that you or your organization are profiting from, requires
registration (payment) of the software. Such payment is made to the Author
of the Software (Jordan Russell).
For information on registering, see the Toolbar2000 documentation or this
web page:
http://www.jrsoftware.org/tb2kreg.php



Alle Zeitangaben in WEZ +1. Es ist jetzt 21:58 Uhr.

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 by Thomas Breitkreuz