Programación General > Delphi
Problema Con Colores
(1/1)
moyo18:
casi igual al formulario q puse abajo
bueno ahora tengo otro problema, al elegir los colores desd un combobox, checklistbox, y otros mas q he agregado, no salen, al darle click al boton aplicar se ponen los paneles negros.
este es el codigo q llevo, intente cambiandovaliables a ver si asi salia pero nop, el unico q sirve es el d edit q al escribir red asigna el color rojo pero lo asigna y lo guarda ya no lo cambia no se porq
aki el codigo q llevo
--- Código: Text --- unit Unit1; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls, CheckLst, ExtCtrls; type TForm1 = class(TForm) Button1: TButton; Panel2: TPanel; Panel1: TPanel; CheckBox1: TCheckBox; CheckBox2: TCheckBox; RadioGroup2: TRadioGroup; Edit1: TEdit; GroupBox1: TGroupBox; Panel3: TPanel; Panel4: TPanel; Panel5: TPanel; Panel6: TPanel; Panel7: TPanel; Panel8: TPanel; CheckListBox1: TCheckListBox; ComboBox1: TComboBox; RadioGroup1: TRadioGroup; Button3: TButton; Button4: TButton; Button2: TButton; procedure Button1Click(Sender: TObject); procedure Button2Click(Sender: TObject); procedure FormCreate(Sender: TObject); procedure RadioGroup1Click(Sender: TObject); procedure Panel3Click(Sender: TObject); procedure Panel4Click(Sender: TObject); procedure Panel5Click(Sender: TObject); procedure Panel6Click(Sender: TObject); procedure Panel7Click(Sender: TObject); procedure Panel8Click(Sender: TObject); procedure CheckListBox1Click(Sender: TObject); procedure ComboBox1Change(Sender: TObject); procedure RadioGroup2Click(Sender: TObject); procedure Button3Click(Sender: TObject); procedure Button4Click(Sender: TObject); procedure Edit1Change(Sender: TObject); private { Private declarations } public pcolor : Tcolor; hola : Tcolor; end; var Form1: TForm1; implementation {$R *.dfm} procedure TForm1.Button1Click(Sender: TObject);begin if checkbox1.checked then panel1.color := pcolor; if checkbox2.checked then panel2.color := pcolor; end; procedure TForm1.Button2Click(Sender: TObject);begin panel1.Color := clwhite; panel2.Color := clwhite;end; procedure TForm1.FormCreate(Sender: TObject);begin panel1.Color := clwhite; panel2.Color := clwhite; GroupBox1.Visible := false; edit1.Visible:= false; radiogroup1.Visible := false; combobox1.Visible := false; checklistbox1.Visible := false; radiogroup2.Visible := true; button4.Visible := false; end; procedure TForm1.RadioGroup1Click(Sender: TObject);begin case RadioGroup1.ItemIndex of 0 : hola := Tcolor($0000A5FF); 1 : hola := clyellow; 2 : hola := clgreen; 3 : hola := clblue; 4 : hola := clred; end;end; procedure TForm1.Panel3Click(Sender: TObject);begin pcolor := clyellow end; procedure TForm1.Panel4Click(Sender: TObject);begin pcolor := clblue; end; procedure TForm1.Panel5Click(Sender: TObject);begin pcolor := clgreen; end; procedure TForm1.Panel6Click(Sender: TObject);begin pcolor := Tcolor($0000A5FF); end; procedure TForm1.Panel7Click(Sender: TObject);begin pcolor := clred; end; procedure TForm1.Panel8Click(Sender: TObject);begin pcolor := clsilver; end; procedure TForm1.CheckListBox1Click(Sender: TObject);begin case checklistbox1.ItemIndex of 0 : pcolor := Tcolor($0000A5FF); 1 : pcolor:= clyellow; 2 : pcolor := clgreen; 3 : pcolor := clblue; 4 : pcolor := clred; end; end; procedure TForm1.ComboBox1Change(Sender: TObject);begin case combobox1.ItemIndex of 0 : pcolor := Tcolor($0000A5FF); 1 : pcolor := clyellow; 2 : pcolor := clgreen; 3 : pcolor := clblue; 4 : pcolor := clred; end; end; procedure TForm1.RadioGroup2Click(Sender: TObject);begin case RadioGroup2.ItemIndex of 0 : radiogroup1.Visible := true; 1 : groupbox1.Visible := true; 2 : edit1.Visible := true; 3 : checklistbox1.Visible := true; 4 : combobox1.Visible := true; end; end; procedure TForm1.Button3Click(Sender: TObject);begin case RadioGroup2.ItemIndex of 0 : radiogroup1.Visible := true; 1 : groupbox1.Visible := true; 2 : edit1.Visible:= true; 3 : checklistbox1.Visible := true; 4 : combobox1.Visible := true; end; radiogroup2.Visible := false; button3.Visible := false; button4.Visible := true; end; procedure TForm1.Button4Click(Sender: TObject);begin button3.Visible := true; button4.Visible := false; GroupBox1.Visible := false; edit1.Visible:= false; radiogroup1.Visible := false; combobox1.Visible := false; checklistbox1.Visible := false; radiogroup2.Visible := true; end; procedure TForm1.Edit1Change(Sender: TObject);begin LowerCase(edit1.text); if(edit1.text='red') then pcolor := clred; end; end.
aki les dejo un enlace para bajar el exe q llevo por ahorita para q vean el erro q digo
bajar
moyo18:
hola ya solucione ese problema d arriba, bueno ahora el problema es q no se como hacer para q se conbinen los colores en un RGB, TENGO Q HACERLO
usando SCROLLBARS pero no se como se haria hasta el momento llevo esto y estoy tratando ver ver .
--- Código: Text ---unit Unit1; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls, ExtCtrls, CheckLst; type TForm1 = class(TForm) Button1: TButton; Button2: TButton; Panel1: TPanel; Panel2: TPanel; CheckBox1: TCheckBox; CheckBox2: TCheckBox; RadioGroup1: TRadioGroup; ComboBox1: TComboBox; GroupBox1: TGroupBox; Panel3: TPanel; Panel4: TPanel; Panel5: TPanel; Panel6: TPanel; Panel7: TPanel; Panel8: TPanel; Edit1: TEdit; Label1: TLabel; Label2: TLabel; Button3: TButton; RadioGroup2: TRadioGroup; Button4: TButton; ScrollBar1: TScrollBar; ScrollBar2: TScrollBar; ScrollBar3: TScrollBar; Label3: TLabel; Label4: TLabel; Label5: TLabel; Label6: TLabel; Label7: TLabel; CheckListBox1: TCheckListBox; procedure Button2Click(Sender: TObject); procedure RadioGroup1Click(Sender: TObject); procedure Button1Click(Sender: TObject); procedure ComboBox1Change(Sender: TObject); procedure CheckListBox1Click(Sender: TObject); procedure Panel3Click(Sender: TObject); procedure Panel4Click(Sender: TObject); procedure Panel5Click(Sender: TObject); procedure Panel6Click(Sender: TObject); procedure Panel7Click(Sender: TObject); procedure FormCreate(Sender: TObject); procedure Edit1Change(Sender: TObject); procedure Button3Click(Sender: TObject); procedure Button4Click(Sender: TObject); procedure ScrollBar1Change(Sender: TObject); procedure ScrollBar2Change(Sender: TObject); procedure ScrollBar3Change(Sender: TObject); private { Private declarations } public end; var Form1: TForm1; acolor : Tcolor; lol : String; implementation {$R *.dfm} procedure TForm1.Button2Click(Sender: TObject);begin panel1.color := clwhite; panel2.color := clwhite;end; procedure TForm1.RadioGroup1Click(Sender: TObject);begin case radiogroup1.Itemindex of 0 : acolor := Tcolor($0000A5FF); 1 : acolor := clYellow; 2 : acolor := clgreen; 3 : acolor := clblue; 4 : acolor := clred; end;end; procedure TForm1.Button1Click(Sender: TObject);begin if checkbox1.Checked then panel1.Color := acolor; if checkbox2.Checked then panel2.color := acolor; end; procedure TForm1.ComboBox1Change(Sender: TObject);begin case combobox1.itemindex of 0 : acolor := Tcolor($0000A5FF); 1 : acolor := clYellow; 2 : acolor := clblue; 3 : acolor := clgreen; 4 : acolor := clred; end; end; procedure TForm1.CheckListBox1Click(Sender: TObject);begin case Checklistbox1.ItemIndex of 0 : acolor := Tcolor($0000A5FF); 1 : acolor := clyellow; 2 : acolor := clgreen; 3 : acolor := clblue; 4 : acolor := clred; end;end; procedure TForm1.Panel3Click(Sender: TObject);begin acolor := Tcolor($0000A5FF);end;procedure TForm1.Panel4Click(Sender: TObject);begin acolor := clyellow;end; procedure TForm1.Panel5Click(Sender: TObject);begin acolor := clgreen;end; procedure TForm1.Panel6Click(Sender: TObject);begin acolor := clblue;end; procedure TForm1.Panel7Click(Sender: TObject);begin acolor := clred;end; procedure TForm1.FormCreate(Sender: TObject);begin panel3.color := Tcolor($0000A5FF); panel4.color := clyellow; panel5.color := clgreen; panel6.color := clblue; panel7.color := clred; radiogroup2.Itemindex := 0;end; procedure TForm1.Edit1Change(Sender: TObject);begin LowerCase(edit1.text); if (edit1.text = 'orange') or (edit1.text = 'ORANGE') then acolor := Tcolor($0000A5FF); if (edit1.text = 'yellow') or (edit1.text = 'YELLOW') then acolor := clyellow; if (edit1.text = 'green') or (edit1.text = 'GREEN') then acolor := clgreen; if (edit1.text = 'blue') or (edit1.text = 'BLUE') then acolor := clblue; if (edit1.text = 'red') or (edit1.text = 'RED') then acolor := clred; end; procedure TForm1.Button3Click(Sender: TObject);begin case radiogroup2.ItemIndex of 0 : begin edit1.Visible := true; label3.Visible := true; label4.Visible := true; label5.Visible := true; label6.Visible := true; label7.Visible := true; end; 1 : Combobox1.Visible := true; 2 : checklistbox1.Visible := true; 3 : groupbox1.Visible := true; 4 : radiogroup1.Visible := true end; radiogroup2.visible := false; checkbox1.visible := true; checkbox2.visible := true; button1.visible := true; button2.visible := true; button4.visible := true; button3.Visible := false; end;procedure TForm1.Button4Click(Sender: TObject);begin radiogroup2.Visible := true; button4.visible := false; button3.Visible := true; edit1.Visible := false; label3.Visible := false; label4.Visible := false; label5.Visible := false; label6.Visible := false; label7.Visible := false; Combobox1.Visible := false; checklistbox1.Visible := false; groupbox1.Visible := false; radiogroup1.Visible := false; checkbox1.visible := false; checkbox2.visible := false; button1.visible := false; button2.visible := false; panel1.color := clwhite; panel2.color := clwhite; end; procedure TForm1.ScrollBar1Change(Sender: TObject);begin lol := '$0000FF'+' $FF0000'+'RGB(0,255,0)' ; panel1.color := $0000FFend; procedure TForm1.ScrollBar2Change(Sender: TObject);begin panel1.color := $FF0000; end; procedure TForm1.ScrollBar3Change(Sender: TObject);begin panel1.color := RGB(0,255,0); end; end.
no se como hacer para mezclar los colores.
ushedipe:
:comp: no se si el objeto del proyecto contemple que se haga de esa manera, pero en la solapa Dialogs se encuentra un objeto llamado TColorDialog, que se ejecuta de la misma manera como los cuadros de diálogo para abrir o salvar archivos, pero por si no lo conoces aquí va el código:
--- Código: Text --- with ColorDialog do begin if Execute then begin //lo que necesites hacer con el color... end; end;
éste código lo puedes incluir en un botón.
suerte :ph34r:
Enko:
http://www.greatis.com/delphicb/tips/lib/m...color2html.html
Navegación
Ir a la versión completa