AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Ctl3D selbst zeichnen

Ein Thema von blablab · begonnen am 12. Jan 2011 · letzter Beitrag vom 12. Jan 2011
Antwort Antwort
blablab

Registriert seit: 3. Jan 2006
509 Beiträge
 
Delphi 7 Enterprise
 
#1

Ctl3D selbst zeichnen

  Alt 12. Jan 2011, 12:06
Hallo!

Ich benutze eine DrawGrid und möchte dass eine Zeile aussieht wie ein normales Panel mit BevelOuter=bvRaised und BevelInner=bvNone.
Ich bin mir nur nicht sicher, wie ich das machen soll. Eigentlich könnte ich ja einfach die Farben raussuchen und damit das Teil malen. Nur leider sind das ja alles Speziel-Farben, die man bei Windows einstellen kann. Deshalb sollte ich diese "Windows-Farben" kennen oder vielleicht gibt es ja noch einen eleganteren Weg...

Freue mich schon auf eure Antworten!

Grüße
blablab
  Mit Zitat antworten Zitat
Benutzerbild von uligerhardt
uligerhardt

Registriert seit: 19. Aug 2004
Ort: Hof/Saale
1.735 Beiträge
 
Delphi 2007 Professional
 
#2

AW: Ctl3D selbst zeichnen

  Alt 12. Jan 2011, 12:18
Nur leider sind das ja alles Speziel-Farben, die man bei Windows einstellen kann. Deshalb sollte ich diese "Windows-Farben" kennen oder vielleicht gibt es ja noch einen eleganteren Weg...
Dafür gibt's clBtnFace und Co. Wenn du den VCL-Quelltext hast, mach mal die Graphics.pas auf und schau dir die Zeilen mit clSystemColor an.

Falls du unter XP und höher gethemeten Look haben willst, schau dir mal die Unit Themes an.
Uli Gerhardt
  Mit Zitat antworten Zitat
Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.540 Beiträge
 
Delphi 11 Alexandria
 
#3

AW: Ctl3D selbst zeichnen

  Alt 12. Jan 2011, 12:18
Malt ein "Pseudo-Panel" ohne Caption auf das Form:
Delphi-Quellcode:
procedure TForm1.FormPaint(Sender: TObject);
var R: TRect;
    OldColor: TColor;
begin
  R := Rect(10,10,195,51);
  OldColor := Canvas.Brush.Color;
  try
    Canvas.Brush.Color := clBtnFace;
    Canvas.FillRect(R);
    ExtCtrls.Frame3D(Canvas,R,clBtnHighLight,clBtnShadow,1);
  finally
    Canvas.Brush.Color := OldColor;
  end;
end;
Detlef
"Ich habe Angst vor dem Tag, an dem die Technologie unsere menschlichen Interaktionen übertrumpft. Die Welt wird eine Generation von Idioten bekommen." (Albert Einstein)
Dieser Tag ist längst gekommen
  Mit Zitat antworten Zitat
blablab

Registriert seit: 3. Jan 2006
509 Beiträge
 
Delphi 7 Enterprise
 
#4

AW: Ctl3D selbst zeichnen

  Alt 12. Jan 2011, 12:24
Genau das hab ich gesucht!
Vielen Dank!!!
  Mit Zitat antworten Zitat
Antwort Antwort


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 11:52 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