![]() |
Icon close max mimi.
Hallo
Ich suche die Icon für die Fenster close, mim. max die oben rechts sind weiß jemand wo ich die bekomme |
Re: Icon close max mimi.
Hi. Welche meinst du? Die vom normalen Design oder die von z.B. Windows XP Luna? Die einfachen könnte man glaub ich sogar relativ leicht selber zeichnen. Das sind ja eigentlich nur Rechtecke, bzw. Striche. Ansonsten, ich glaube Mirage (Ich glaube zumindest, dass es Mirage war :gruebel:) hat mal ne Iconsammlung hochgeladen (Einfach mal in der DP suchen). Vielleicht is da ja was passendes dabei.
Man liest sich, Stanlay :hi: |
Re: Icon close max mimi.
ne die normalen
aber thx für den tip wollte aber schon die originalen nehmen |
Re: Icon close max mimi.
Liste der Anhänge anzeigen (Anzahl: 2)
Die "normalen Icon's" (auch bei den Standard-XP-Stilen) sind keine Icon'S (Bilder).
Das sind einfach nur Tastenfeld mit einem Zeichen in der Schriftart Marlett. Schau dir mal die Zeichen an den Positionen "0", "1", "2" und "r" an, das sind die, die du suchst. (siehe Project) In Marlett ist fast leer, da sind nur die verschiedenen Windows zeichen drin. (0123456789abcdefghijklmnopqrstuvwxy) |
Re: Icon close max mimi.
thx
aber wie bekomme ich sie denn jetzt so hin wie bei windows? |
Re: Icon close max mimi.
In den Eingenschaften des Bildschirms kann ja die Breite der Titelleiste eingestellt werden.
Diese Breite muß ausgelesen und um 4 Pixel (ist jetzt ein reine Schätzwert, also besser noch mal Testen, ob es auch stimmt) verringert werden. Das ergibt dann die Breite/Höhe des Buttons. Dann muß noch die Schriftgröße (Button.Font.Height) angepasst werden, also das letzte Maß nochmal um 6-8 Pixel verringern. z.B.:
Delphi-Quellcode:
Wie die Höhe der Titelleiste ausgelesen wird weiß ich jetzt nicht, bin aber sicher, dass es hier schon irgendwo in der DP steht.
Button.Height := Höhe_der_Titelleiste - 4;
Button.Width := Button.Height; {Button.Font.Name := 'Marlett';} Button.Font.Height := Max(Button.Height - 6, 1); {Max ist zur Sicherheit, damit keine negative Schrifthöhe entstehen kann} {Da die Titelleiste minimal 8 Pixel hoch sein kann, könnte so auch mal, mit den hier im Beispiel verwendeten Werten (-4 & -6), -2 für die Schrifthöhe entstehen} Ich hatte mir bis jetzt nicht die Mühe gemacht, es gibt ja auch "dreckige Methoden". :oops:
Delphi-Quellcode:
[add]
{Dafür braucht man nur ein Formular mit der entsprechenden Titelleiste und so}
Höhe_der_Titelleiste := {Form1.}Height - {Form1.}ClientHeight - ({Form1.}Width - {Form1.}ClientWidth) div 2 Es könnte auch sein, dass der Schriftsyle noch geändert werden muß. z.B.:
Delphi-Quellcode:
Button.Font.Style := [fsBold];
|
Re: Icon close max mimi.
Wozu brauchst du das eigentlich? :gruebel:
|
Re: Icon close max mimi.
Zitat:
Habe ich auch schon gebraucht: ![]() |
Re: Icon close max mimi.
Zitat:
sprich schliessen soll der gleiche button sein wie im fenster |
Re: Icon close max mimi.
@himitsu
den button mit den font ist jetzt soweit verstanden nur wie bekomme ich es hin das er den gleichen style hat also weisses kreuz und roter hintergrund oder wenn der stlye geändert wird das dann mit übernommen wird |
Re: Icon close max mimi.
Das einfachste würde es sein, eine eigene Komponente zu basteln. Hier mal der Anfang:
Delphi-Quellcode:
...:cat:...
unit Unit1;
interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, ExtCtrls; type TPanelEx = class(TPanel) protected procedure CreateParams(var Params: TCreateParams); override; end; TForm1 = class(TForm) procedure FormCreate(Sender: TObject); private { Private declarations } public { Public declarations } end; var Form1: TForm1; implementation {$R *.dfm} { TPanelEx } procedure TPanelEx.CreateParams(var Params: TCreateParams); begin inherited; Params.Style := Params.Style or (WS_CAPTION or WS_THICKFRAME or WS_MINIMIZEBOX or WS_MAXIMIZEBOX or WS_SYSMENU); end; { TForm1 } procedure TForm1.FormCreate(Sender: TObject); begin with TPanelEx.Create(Self) do begin Left := 50; Top := 50; Width := 200; Height := 300; Parent := Self; end; end; end. |
Re: Icon close max mimi.
Irgendwo müssen ja die Daten (Farben ...) für den aktiven Style gespeichert sein.
Die mußt du einfach nur abrufen. :wink: |
Re: Icon close max mimi.
Hi,
@sakura: da wird leider nichts angezeigt. :( Trotz einem eingefügtem Visible := true;. ;) Chris |
Re: Icon close max mimi.
Liste der Anhänge anzeigen (Anzahl: 1)
Hier mal die Soße von obigem Beispiel.
...:cat:... |
Re: Icon close max mimi.
Hi sakura,
super, jetzt funktioniert's. :) Chris :stupid: |
Re: Icon close max mimi.
Zitat:
|
Re: Icon close max mimi.
ähhhh
eigentlich wollte ich nur die 3 button um sie für meine panels zu benutzen und das wenn es geht im gleich style wie die im fenster es hätte auch gereicht wenn sie den style nicht geändert hätten ich möchte eigentlich das user - das er den button (zb. close) wieder erkennt sprich dieser button ist close - also schliesse ich hier mit ich hab jetzt ne button - in caption stht 'r' mit den font marlet mqacht leider nur nicht sehr viel her da der xp style noch fehlt da ich nur die delphi standard button benutze kann ich leider nicht die farbe verändern |
Re: Icon close max mimi.
Mit Delphi-eigenen Boardmitteln wirst Du da nicht sehr weit kommen, da diese Buttons von Windows automatisch generiert werden. Deswegen entweder bei
![]() Wie bereits gesagt wurde, ein Großteil dieser Dinge liegt als Grafik vor - und was soll mit Deiner App auf Win9X/WinNT/Win2K Maschinen oder XP-Rechner ohne diese däm.... Schnick-Schnack geschehen :roll: ...:cat:... |
Re: Icon close max mimi.
hmmm
schade es soll doch schon gut aussehen äh mein app läuft nur auf xp-maschinen wollte mit minimalen mittel das maxinmum raus holen aber ihr habt mich wieder auf den boden der tatsachen gebracht dank euch allen weiß jetzt um was es geht - hab sogar noch ne lösung mit source werde jetzt versuchen es umzusetzen |
Re: Icon close max mimi.
ich hatte da mal ne komponente namens ThemeManager vielleicht hilft dir die weiter, aber ich hab im mom kein XP mehr (system crash; cd verlegt), und kann daher nix genaues sagen.
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 16:56 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-2025 by Thomas Breitkreuz