AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein GUI-Design mit VCL / FireMonkey / Common Controls Delphi Hexadezimal RGB (Edit und Trackbar) simultan ändern

Hexadezimal RGB (Edit und Trackbar) simultan ändern

Ein Thema von The_Doomed · begonnen am 26. Feb 2008 · letzter Beitrag vom 25. Apr 2008
Antwort Antwort
The_Doomed

Registriert seit: 5. Dez 2007
101 Beiträge
 
#1

Hexadezimal RGB (Edit und Trackbar) simultan ändern

  Alt 26. Feb 2008, 17:17
ha da ein problem dem ich nich auf die spur komme
und zwar will ich ein Bild mit einer farbe füllen
und dies soll sowohl über RGB-Trackbars, RGB-Editfelder und ein Hexadezimal-Editfeld möglich sein
wenn ich nun einen der werte verändere sollen alle anderen werte automatisch mitgeändert werden
das klappt auch super nur wenn ich einen RGB Wert eingebe (zb. 255,255,0) dann erstellt er den dazugehörigen
Hexadezimalcode nicht (--> $00FFFF00 (#FFFF00) sondern gibt den Fehler Inkompatible Typen Integer und String aus
nur weiß ich ni wo dies der fall sein soll

Delphi-Quellcode:
  
begin
Col:=StringToColor('$00' + Edit1.Text); //hier liegt meiner vermutung nach der Fehler
Edit2.text:=Format('%d',[GetBValue(Col)]);
Edit3.Text:=Format('%d',[GetGValue(Col)]);
edit4.Text:=Format('%d',[GetRValue(Col)]);

end;

procedure TForm1.Edit2Change(Sender: TObject);
var a,b,c:string;
begin
a:=Edit2.Text;
b:=Edit3.Text;
c:=Edit4.Text;
Trackbar1.Position:=StrToInt(Edit2.Text);
Edit1.Text:=Format('2x%.2x%.2x', [StrToInt(a),StrToInt(b),StrToInt(c)]); //Umwandlung des RGB in Hexa
end;

procedure TForm1.Edit3Change(Sender: TObject);
var a,b,c:string;
begin
a:=Edit2.Text;
b:=Edit3.Text;
c:=Edit4.Text;
Trackbar2.Position:=StrToInt(Edit3.Text);
Edit1.Text:=Format('2x%.2x%.2x', [StrToInt(a),StrToInt(b),StrToInt(c)]);
end;

procedure TForm1.Edit4Change(Sender: TObject);
var a,b,c:string;
begin
a:=Edit2.Text;
b:=Edit3.Text;
c:=Edit4.Text;
Trackbar3.Position:=StrToInt(Edit4.Text);
edit1.Text:=Format('2x%.2x%.2x', [StrToInt(a),StrToInt(b),StrToInt(c)]);
end;

procedure TForm1.TrackBar1Change(Sender: TObject);
begin
With Image1.Canvas do
begin
pen.Color:=RGB(Trackbar1.Position,Trackbar2.Position,Trackbar3.Position);
brush.Color:=RGB(Trackbar1.Position,Trackbar2.Position,Trackbar3.Position);
brush.Style:=bssolid;
rectangle(0,0,Image1.Width,Image1.Height);
Edit2.Text:=IntToStr(Trackbar1.Position);
end;

end;


procedure TForm1.TrackBar2Change(Sender: TObject);
begin
With Image1.Canvas do
begin
pen.Color:=RGB(Trackbar1.Position,Trackbar2.Position,Trackbar3.Position);
brush.Color:=RGB(Trackbar1.Position,Trackbar2.Position,Trackbar3.Position);
brush.Style:=bssolid;
rectangle(0,0,Image1.Width,Image1.Height);
Edit3.Text:=IntToStr(Trackbar2.Position);
end
end;


procedure TForm1.TrackBar3Change(Sender: TObject);
begin
With Image1.Canvas do
begin
pen.Color:=RGB(Trackbar1.Position,Trackbar2.Position,Trackbar3.Position);
brush.Color:=RGB(Trackbar1.Position,Trackbar2.Position,Trackbar3.Position);
brush.Style:=bssolid;
rectangle(0,0,Image1.Width,Image1.Height);
Edit4.Text:=IntToStr(Trackbar3.Position);
end
end;
danke schon mal im vorraus
  Mit Zitat antworten Zitat
The_Doomed

Registriert seit: 5. Dez 2007
101 Beiträge
 
#2

Re: Hexadezimal RGB (Edit und Trackbar) simultan ändern

  Alt 25. Apr 2008, 18:06
push it to be solved ^^
  Mit Zitat antworten Zitat
Benutzerbild von Fussball-Robby
Fussball-Robby

Registriert seit: 22. Okt 2007
Ort: Nähe Köln
1.063 Beiträge
 
Delphi 7 Enterprise
 
#3

Re: Hexadezimal RGB (Edit und Trackbar) simultan ändern

  Alt 25. Apr 2008, 18:08
Debug doch mal mit F7, dann findest du die fehlerhafte Stelle ganz schnell
[Edit]Hab nicht gesehen, dass du die Stelle schon markiert hattest. Was steht zu dem Zeitpunkt denn in Edit1? Und von welchem Typ ist Col?[/Edit]
Robert L.
Der folgende Satz ist richtig!
Der vorherige Satz ist falsch!

Paradox
  Mit Zitat antworten Zitat
Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
Ansicht

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 07:04 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