AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein GUI-Design mit VCL / FireMonkey / Common Controls Delphi Label "Benutzerdefinierte Farben" im Colordialog ändern?
Thema durchsuchen
Ansicht
Themen-Optionen

Label "Benutzerdefinierte Farben" im Colordialog ändern?

Ein Thema von GeorgPeifer · begonnen am 14. Dez 2004 · letzter Beitrag vom 16. Dez 2004
Antwort Antwort
Seite 1 von 2  1 2      
GeorgPeifer

Registriert seit: 7. Dez 2004
Ort: Kerpen
21 Beiträge
 
#1

Label "Benutzerdefinierte Farben" im Colordialog ä

  Alt 14. Dez 2004, 13:51
dank dem Programmiertip Swissdelphicenter / ...die Standard Windows Dialoge verändern? habe ich gelernt, wie man die Beschriftung innerhalb des Öffnen/Speichern/Drucken-Dialog ändert. Geht das auch irgendwie beim Colordialog ?

mfG
Georg
Georg Peifer
  Mit Zitat antworten Zitat
Benutzerbild von Ultimator
Ultimator

Registriert seit: 17. Feb 2004
Ort: Coburg
1.860 Beiträge
 
FreePascal / Lazarus
 
#2

Re: Beschriftung im Colordialog ändern?

  Alt 14. Dez 2004, 14:01
Irgendwie geht der Link nicht

Aber du könntest per MSDN-Library durchsuchenFindWindow und MSDN-Library durchsuchenSetWindowText einiges erreichen, wenns dir so reicht.
Julian J. Pracht
  Mit Zitat antworten Zitat
GeorgPeifer

Registriert seit: 7. Dez 2004
Ort: Kerpen
21 Beiträge
 
#3

Re: Beschriftung im Colordialog ändern?

  Alt 14. Dez 2004, 14:19
Hi Ultimator .. bei mir geht der Link.. komisch

so etwa siehts aus beim OpenDialog:

Code:
procedure TForm1.OpenDialog1Show(Sender: TObject);
{First, we need to determine identifiers of dialog's controls, they are following:}
const
  LB_FILETYPES_ID = 1089; // "File types:" label
  LB_FILENAME_ID = 1090; // "File name:" label
  LB_DRIVES_ID = 1091;   // "Look in:" label
var
  hOpenDialog: HWND;
  Str1,Str2,Str3,Str4,Str5:string;
begin
  Str1:=GetText('MainMenu','Main_Oeffnen','&Öffnen');
  Str2:=GetText('Subforms','Sub_Abbruch','&Abbruch');
  Str3:=GetText('Subforms','Sub_Dateityp','Dateityp')+':';
  Str4:=GetText('MainMenu','Main_Datei','&Datei')+':';
  Str5:=GetText('Subforms','Sub_Suchen_in','Suchen in')+':';
  hOpenDialog := GetParent(OpenDialog1.Handle);
  SendMessage(hOpenDialog, CDM_SETCONTROLTEXT, idOk, Longint(PChar(Str1)));
  SendMessage(hOpenDialog, CDM_SETCONTROLTEXT, idCancel, Longint(PChar(Str2)));
  SendMessage(hOpenDialog, CDM_SETCONTROLTEXT, LB_FILETYPES_ID, Longint(PChar(Str3)));
  SendMessage(hOpenDialog, CDM_SETCONTROLTEXT, LB_FILENAME_ID, Longint(PChar(Str4)));
  SendMessage(hOpenDialog, CDM_SETCONTROLTEXT, LB_DRIVES_ID, Longint(PChar(Str5)));
end;
damit konnte ich zumindest mal den Titel des Dialogs ändern .. aber alles andere bekomme ich nicht geändert

Code:
  SetWindowText(ColorDialog1.Handle,PChar('Hallo Das ist ein neuer Text'));
Georg Peifer
  Mit Zitat antworten Zitat
Benutzerbild von MaBuSE
MaBuSE

Registriert seit: 23. Sep 2002
Ort: Frankfurt am Main (in der Nähe)
1.837 Beiträge
 
Delphi 10 Seattle Enterprise
 
#4

Re: Beschriftung im Colordialog ändern?

  Alt 14. Dez 2004, 15:26
Zitat von GeorgPeifer:
damit konnte ich zumindest mal den Titel des Dialogs ändern .. aber alles andere bekomme ich nicht geändert
Code:
  SetWindowText(ColorDialog1.Handle,PChar('Hallo Das ist ein neuer Text'));
Hmmm, warum?
Geht doch:
Delphi-Quellcode:
...
procedure TForm1.ColorDialog1Show(Sender: TObject);
begin
  SetWindowText(GetDlgItem(ColorDialog1.Handle, idOk), '&Fertig');
  SetWindowText(GetDlgItem(ColorDialog1.Handle, idCancel), '&Wegmache');
  SetWindowText(ColorDialog1.Handle, 'Bunt');
end;

procedure TForm1.BitBtn1Click(Sender: TObject);
begin
  ColorDialog1.Execute
end;
...
(°¿°) MaBuSE - proud to be a DP member
(°¿°) MaBuSE - proud to be a "Rüsselmops" ;-)
  Mit Zitat antworten Zitat
GeorgPeifer

Registriert seit: 7. Dez 2004
Ort: Kerpen
21 Beiträge
 
#5

Re: Beschriftung im Colordialog ändern?

  Alt 14. Dez 2004, 15:34
@MaBuSE danke schonmal für die Anregung.. jetzt fehlen nur noch der Text für Benutzerdefinierte Farben.. die anderen habe ich jetzt
Georg Peifer
  Mit Zitat antworten Zitat
Benutzerbild von MaBuSE
MaBuSE

Registriert seit: 23. Sep 2002
Ort: Frankfurt am Main (in der Nähe)
1.837 Beiträge
 
Delphi 10 Seattle Enterprise
 
#6

Re: Beschriftung im Colordialog ändern?

  Alt 15. Dez 2004, 09:41
Zitat von GeorgPeifer:
@MaBuSE danke schonmal für die Anregung.. jetzt fehlen nur noch der Text für Benutzerdefinierte Farben.. die anderen habe ich jetzt
Hier ist ein Beispiel mit fast allen Controlls:
(das Label "Benutzerdefinierte Farben:" habe ich nicht herausgefunden)

Delphi-Quellcode:
procedure TForm1.ColorDialog1Show(Sender: TObject);
var
  i: word;
begin
  SetWindowText(ColorDialog1.Handle, 'Mein Farbendialog');

  SetWindowText(GetDlgItem(ColorDialog1.Handle, 1), '&Ok');
  SetWindowText(GetDlgItem(ColorDialog1.Handle, 2), '&Cancel');
  SetWindowText(GetDlgItem(ColorDialog1.Handle, 719), 'Farben wählen');
  SetWindowText(GetDlgItem(ColorDialog1.Handle, 712), 'Farben hinzufügen');
  SetWindowText(GetDlgItem(ColorDialog1.Handle, 723), 'Farbt.');
  SetWindowText(GetDlgItem(ColorDialog1.Handle, 724), 'Sätt.');
  SetWindowText(GetDlgItem(ColorDialog1.Handle, 725), 'Hell.');
  SetWindowText(GetDlgItem(ColorDialog1.Handle, 726), 'Rot');
  SetWindowText(GetDlgItem(ColorDialog1.Handle, 727), 'Grün');
  SetWindowText(GetDlgItem(ColorDialog1.Handle, 728), 'Blau');

  SetWindowText(GetDlgItem(ColorDialog1.Handle, 730), 'Farbe');
  SetWindowText(GetDlgItem(ColorDialog1.Handle, 731), '|Basis');

  SetWindowText(GetDlgItem(ColorDialog1.Handle, 65535), 'Grundfarben');

// hiermit kann man leicht die Nummern herausfinden ;-)
// for i := 0 to high(i) do SetWindowText(GetDlgItem(ColorDialog1.Handle, i), PChar(intToStr(i)));
end;

procedure TForm1.BitBtn1Click(Sender: TObject);
begin
  ColorDialog1.Execute
end;
(°¿°) MaBuSE - proud to be a DP member
(°¿°) MaBuSE - proud to be a "Rüsselmops" ;-)
  Mit Zitat antworten Zitat
GeorgPeifer

Registriert seit: 7. Dez 2004
Ort: Kerpen
21 Beiträge
 
#7

Re: Beschriftung im Colordialog ändern?

  Alt 15. Dez 2004, 09:59
@MaBuSE - genauso hatte ich es auch gemacht und festgestellt, dass das einzige was fehlt das Label "Benutzerdefinierte Farben:" ist

Wie kann man denn das noch rausfinden?
Die Control ID 65535 ist wohl OK - nur das ColorDialog1.Handle stimmt offenbar nicht.

Hilft das vielleicht jemandem hier weiter?

http://www.ego-creations.de/pics/winspy.gif
Georg Peifer
  Mit Zitat antworten Zitat
Benutzerbild von MaBuSE
MaBuSE

Registriert seit: 23. Sep 2002
Ort: Frankfurt am Main (in der Nähe)
1.837 Beiträge
 
Delphi 10 Seattle Enterprise
 
#8

Re: Beschriftung im Colordialog ändern?

  Alt 16. Dez 2004, 13:04
Zitat von GeorgPeifer:
Wie kann man denn das noch rausfinden?
Die Control ID 65535 ist wohl OK - nur das ColorDialog1.Handle stimmt offenbar nicht.
Vieleicht hast Du ja einen Bug von MS gefunden

Aber es gibt ja noch andere Alternativen:

Zitat:
TColorDialogAdv v.0.9
Freeware
Size: 41 k

By Nicolas Brault. Powerfull TColorDialog with RGB and HUE selection (you can see the same selection method in Paint Shop Pro and Photoshop).

Fully functional
Source: Included

Download: D6
http://www.torry.net/vcl/dialogs/ext...rdialogadv.zip

Die Komponente funktionierte aber auch ohne Probleme in Delphi 7.

Da der Sourcecode dabei ist, kann der Dialog individuell angepasst werden.

Viel Spaß
(°¿°) MaBuSE - proud to be a DP member
(°¿°) MaBuSE - proud to be a "Rüsselmops" ;-)
  Mit Zitat antworten Zitat
GeorgPeifer

Registriert seit: 7. Dez 2004
Ort: Kerpen
21 Beiträge
 
#9

Re: Label "Benutzerdefinierte Farben" im Colordial

  Alt 16. Dez 2004, 13:37
@MaBuSE - Thx für den Tip - habe übrigens bei diesem Projekt Delphi 4 mit Tonnenweise Freeware Komponenten verwendet aber egal kann ich ja notfalls umstricken. Aber ich bekomme die Komponente nicht installiert. Einmal kennt Delphi 4 scheinbar die Direktive {$ALIGN 8} nicht. Wenn ich die weglösche, dann meckert er über rtl.dpk nicht gefunden - gehört da noch was zu?

Viele Grüße
Georg
Georg Peifer
  Mit Zitat antworten Zitat
Benutzerbild von MaBuSE
MaBuSE

Registriert seit: 23. Sep 2002
Ort: Frankfurt am Main (in der Nähe)
1.837 Beiträge
 
Delphi 10 Seattle Enterprise
 
#10

Re: Label "Benutzerdefinierte Farben" im Colordial

  Alt 16. Dez 2004, 14:07
Zitat von GeorgPeifer:
@MaBuSE - Thx für den Tip - habe übrigens bei diesem Projekt Delphi 4 mit Tonnenweise Freeware Komponenten verwendet aber egal kann ich ja notfalls umstricken. Aber ich bekomme die Komponente nicht installiert. Einmal kennt Delphi 4 scheinbar die Direktive {$ALIGN 8} nicht. Wenn ich die weglösche, dann meckert er über rtl.dpk nicht gefunden - gehört da noch was zu?
Huch Delphi 4

Diese Komponente ist mit Delphi 6 geschrieben, es kann sein, dass dort Dinge verwendet wurden, die nicht in Delphi 4 funktionieren.

Delphi 7 hat in den *.dpk Dateien meist {$ALIGN 8} stehen, bei Delphi 5 ist es: {$ALIGN ON}

Ab Delphi 6 steht in den requires nur noch rtl, vcl, ...
Bei Delphi 5 war das noch rtl50, vcl50, ...

Versuch also mal das rtl in rtl40 zu ändern. (vcl = vcl40, vclsmp = vclsmp40)

Dann könnte es klappen.
(°¿°) MaBuSE - proud to be a DP member
(°¿°) MaBuSE - proud to be a "Rüsselmops" ;-)
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2      


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 18:10 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