Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Betriebssysteme (https://www.delphipraxis.net/27-betriebssysteme/)
-   -   Icon close max mimi. (https://www.delphipraxis.net/13844-icon-close-max-mimi.html)

HomerGER 27. Dez 2003 22:06


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

Stanlay Hanks 27. Dez 2003 22:50

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:

HomerGER 28. Dez 2003 00:03

Re: Icon close max mimi.
 
ne die normalen
aber thx für den tip
wollte aber schon die originalen nehmen

himitsu 28. Dez 2003 01:44

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)

HomerGER 28. Dez 2003 04:50

Re: Icon close max mimi.
 
thx
aber wie bekomme ich sie denn jetzt so hin wie bei windows?

himitsu 28. Dez 2003 13:27

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:
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}
Wie die Höhe der Titelleiste ausgelesen wird weiß ich jetzt nicht, bin aber sicher, dass es hier schon irgendwo in der DP steht.
Ich hatte mir bis jetzt nicht die Mühe gemacht, es gibt ja auch "dreckige Methoden". :oops:

Delphi-Quellcode:
{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
[add]
Es könnte auch sein, dass der Schriftsyle noch geändert werden muß.

z.B.:
Delphi-Quellcode:
Button.Font.Style := [fsBold];

Luckie 28. Dez 2003 13:30

Re: Icon close max mimi.
 
Wozu brauchst du das eigentlich? :gruebel:

FriFra 29. Dez 2003 11:51

Re: Icon close max mimi.
 
Zitat:

Zitat von Luckie
Wozu brauchst du das eigentlich? :gruebel:

Ich denke mal, wenn man sich eigene Styles ohne Skinmanager machen will ist das ganz nützlich :-D ...
Habe ich auch schon gebraucht:
http://www.frifra.de/Temp/xbuddy.jpg

HomerGER 29. Dez 2003 12:03

Re: Icon close max mimi.
 
Zitat:

Zitat von Luckie
Wozu brauchst du das eigentlich? :gruebel:

ich hab ein paar panel die ich mit den gleichen style wie das fenster haben will
sprich schliessen
soll der gleiche button sein wie im fenster

HomerGER 29. Dez 2003 12:05

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

sakura 29. Dez 2003 12:12

Re: Icon close max mimi.
 
Das einfachste würde es sein, eine eigene Komponente zu basteln. Hier mal der Anfang:

Delphi-Quellcode:
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.
...:cat:...

himitsu 29. Dez 2003 13:12

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:

CalganX 29. Dez 2003 13:17

Re: Icon close max mimi.
 
Hi,
@sakura: da wird leider nichts angezeigt. :( Trotz einem eingefügtem Visible := true;. ;)

Chris

sakura 29. Dez 2003 13:19

Re: Icon close max mimi.
 
Liste der Anhänge anzeigen (Anzahl: 1)
Hier mal die Soße von obigem Beispiel.

...:cat:...

CalganX 29. Dez 2003 13:25

Re: Icon close max mimi.
 
Hi sakura,
super, jetzt funktioniert's. :)

Chris :stupid:

FriFra 29. Dez 2003 13:26

Re: Icon close max mimi.
 
Zitat:

Zitat von himitsu
Irgendwo müssen ja die Daten (Farben ...) für den aktiven Style gespeichert sein.

Die mußt du einfach nur abrufen. :wink:

Diese Daten sind nirgends gespeichert, da es sich bei den Styles (ich meine hier z.B. Titlebars etc.) um einen Satz ganz normaler Grafiken handelt.

HomerGER 29. Dez 2003 13:53

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

sakura 29. Dez 2003 13:58

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 www.torry.ru nachschauen, oder meine Variante oder in den sauren Apfel beißen.

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:...

HomerGER 29. Dez 2003 14:04

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

c113plpbr 29. Dez 2003 14:42

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