Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Win32/Win64 API (native code) (https://www.delphipraxis.net/17-win32-win64-api-native-code/)
-   -   Delphi über sendmessage Font.color einstellen (https://www.delphipraxis.net/19732-ueber-sendmessage-font-color-einstellen.html)

kiar 7. Apr 2004 22:44


über sendmessage Font.color einstellen
 
hallo,

wie kann ich in einem Tedit die Farbe der schrift einstellen:
Delphi-Quellcode:
sendmessage(handle,em_ :gruebel:,0,0)
raik

mirage228 7. Apr 2004 22:45

Re: über sendmessage Font.color einstellen
 
Delphi-Quellcode:
SendMessage(Handle, WM_SETFONT, Integer(Font.Handle), Integer(True));
Edit: Font ist hier vom Typ TFont. Dort kannst du die Farbe ändern, du musst aber das Font-Handle vom Typ HFONT an SendMessage übergeben.

mfG
mirage228

Luckie 7. Apr 2004 22:46

Re: über sendmessage Font.color einstellen
 
Delphi-Quellcode:
Edit1.Font.Color := clRed;
Oder muss es mit Sendmesaage sein? Das ist nicht so einfach.

kiar 7. Apr 2004 22:48

Re: über sendmessage Font.color einstellen
 
hallo mi....

das musste mir mal erklären?
wo stell ich da die farbe ein.

danke raik

kiar 7. Apr 2004 22:51

Re: über sendmessage Font.color einstellen
 
hallo luckie,

[ot] habe schon schlechtere bilder von dir gesehen [/ot]

wuerde mich interessieren.
Zitat:


Oder muss es mit Sendmesaage sein? Das ist nicht so einfach.
darum frag ich.
raik

mirage228 8. Apr 2004 07:52

Re: über sendmessage Font.color einstellen
 
Zitat:

Zitat von kiar
hallo mi....

das musste mir mal erklären?
wo stell ich da die farbe ein.

danke raik

Hoi,

du könntest WinAPI mäßig einen Font erstellen:
(näheres zu CreateFont unter MSDN-Library durchsuchenCreateFont --> http://msdn.microsoft.com/library/de...ntext_8fp0.asp - dort steht auch, wie du die Farbe verändern kannst. )

Delphi-Quellcode:
var
  MyFont: HFONT;
begin
MyFont := CreateFont(10, 0, 0, 0, 0, 0, 0, 0, ANSI_CHARSET,
            OUT_DEFAULT_PRECIS, CLIP_DEFAULT_PRECIS, DEFAULT_QUALITY,
            DEFAULT_PITCH, 'Arial');
SendMessage(Handle, WM_SETFONT, Integer(MyFont), Integer(True));
end;
oder mit TFont
Delphi-Quellcode:
var
  Font: TFont;
begin
  Font := TFont.Create;
  try
    Font.Assign(Edit1.Font);
    Font.Color := clRed;
    SendMessage(Handle, WM_SETFONT, Integer(Font.Handle), Integer(True));    
  finally
    Font.Free;
end;
Beides ungetestet, sollte aber funktionieren.

mfG
mirage228


Alle Zeitangaben in WEZ +1. Es ist jetzt 09:17 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