Autor Beitrag
Fasi-Monster
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 16



BeitragVerfasst: Mi 23.10.02 14:35 
Sanfte Grüße (hi,hi)
Ich habe da ein Problem mit Farben. Delphi schleift die Farben der Benutzereinstellungen durch und so kommt es, dass die Buttons und Reiter der PageControls in Farben erscheit, die eigentlich nicht zum "ausgewählten " rest passen. Gibt es eine Möglichkeit das zu unterbinden?

_________________
Da stand : Installieren sie Win98 oder besser; also installierte ich OS/2 ?!? :-)))
Tino
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Veteran
Beiträge: 9839
Erhaltene Danke: 45

Windows 8.1
Delphi XE4
BeitragVerfasst: Mi 23.10.02 14:48 
Also bei mir sind die Buttons und die Reiter des PageControls in der richtigen Farbe... :roll:
Fasi-Monster Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 16



BeitragVerfasst: Mi 23.10.02 16:30 
Also nochmal:
wenn ich mit Delphi6 ein Proggi bastle und nix in Farben ändere, dann werden die Farben, gemäß der Einstellung, die man bei Windows macht übernommen. Die Buttons werden bei der Einstellung Ahorn z.B. hellbraun u.s.w. Wenn ich aber sagen will, dass die Farbe meiner Form blau sein soll, kann es (je nach windows) sein, das die Buttons hellbraun sind.
Also, wie kann man das unterbinden?

_________________
Da stand : Installieren sie Win98 oder besser; also installierte ich OS/2 ?!? :-)))
Tino
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Veteran
Beiträge: 9839
Erhaltene Danke: 45

Windows 8.1
Delphi XE4
BeitragVerfasst: Do 24.10.02 00:27 
Also nochmal:
Fasi-Monster hat folgendes geschrieben:
Wenn ich aber sagen will, dass die Farbe meiner Form blau sein soll, kann es (je nach windows) sein, das die Buttons hellbraun sind.

Ähä. Wem willst Du etwas sagen? Möchtest Du Änderungen in den Einstellungen von Windows machen oder in bei der Entwicklung. Also z. B. im Objektinspektor?

Gruß
TINO
MathiasSimmack
Ehemaliges Mitglied
Erhaltene Danke: 1



BeitragVerfasst: Do 24.10.02 08:07 
Fasi-Monster hat folgendes geschrieben:
wenn ich mit Delphi6 ein Proggi bastle (Anm. von Simmi: :wink:) und nix in Farben ändere, dann werden die Farben, gemäß der Einstellung, die man bei Windows macht übernommen.

Ist eigentlich ja auch logisch.
Zitat:
"Wenn ich aber sagen will, dass die Farbe meiner Form blau sein soll, kann es (je nach windows) sein, das die Buttons hellbraun sind.

Der TButton hat keine "Color"-Eigenschaft, die Farbe lässt sich also auf dem Weg über den Objektinspektor nicht unbedingt ändern. Du kannst deine Form also so bunt machen wie du willst - die Buttons werden immer die Farbe besitzen, der die Windows-User eingestellt hat; hellbraun eben bei dieser "Ahorn"-Einstellung ...

Zitat:
Also, wie kann man das unterbinden?

Gegenfrage: warum sollte man das unterbinden? Warum ein Programm benutzen, dass sich den Systemfarben widersetzt und dadurch evtl. Sch... aussieht, wenn der User die selben Farben für den Hintergrund usw. benutzt?
Dann lieber alles unverändert lassen, dann reagiert das Programm auf die Farbänderung des Anwenders (Der Kunde ist König!) flexibel.

Ansonsten, um deine Frage zu beantworten: Du musst eine passende Komponente verwenden, die dir die farbliche Änderung von Buttons erlaubt, bzw. du musst diese Farbänderung selbst programmieren.
Tino
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Veteran
Beiträge: 9839
Erhaltene Danke: 45

Windows 8.1
Delphi XE4
BeitragVerfasst: Do 24.10.02 08:23 
@MathiasSimmack: Danke, jetzt habe ich es vestanden. Hatte nicht daran gedacht das der TButton keine Color Eingeschaft besitzt und habe deshalb das angebliche "Problem" nicht so richtig verstanden.

Gruß
TINO
Fasi-Monster Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 16



BeitragVerfasst: Do 24.10.02 09:55 
:roll:
Also gut, ich habe ja die Möglichkeit die Buttons durch PDJButtons zu ersetzten, denn da kann ich die Farbe ändern. Ich hätte da eine Theorie zu den TabSheets von den PageControls. Wie sieht´s denn mit
"PageControl1.Canvas.Brush.Color := clred;" aus oder ähnliches, denn das hier funktioniert nicht. Hat einer schon mal so was versucht?

_________________
Da stand : Installieren sie Win98 oder besser; also installierte ich OS/2 ?!? :-)))
Fasi-Monster Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 16



BeitragVerfasst: Do 24.10.02 16:26 
:D
Also Hoschies...

Im Obj.Insp. vom PageControl auf OnDrawTab
ausblenden Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
procedure TRetour_frm.PageControl1DrawTab(Control: TCustomTabControl;
  TabIndex: Integer; const Rect: TRect; Active: Boolean);
begin
  If TabIndex >= 0 Then With Control.Canvas Do 
  Begin
      TextRect( Rect, Rect.Left+8, Rect.Top+3,
      TPageControl(Control).Pages[TabIndex].Caption );
  End;  
end;

und außerdem noch in den Eigenschaften "OwnerDraw" auf True
Die Schrift sieht man erst nach´m Kompilieren. Nur den doofen Rand von den TabSheet bekomme ich noch nicht weg.


Bunt ist das Leben(??) und Granatenstark(???????)

(24.10.02 17:06 Tino) Code-Tags hinzugefügt.

_________________
Da stand : Installieren sie Win98 oder besser; also installierte ich OS/2 ?!? :-)))