• Domingo 22 de Diciembre de 2024, 13:51

Autor Tema:  Ayuda Con Formulario  (Leído 2032 veces)

moyo18

  • Nuevo Miembro
  • *
  • Mensajes: 9
    • Ver Perfil
Ayuda Con Formulario
« en: Jueves 22 de Febrero de 2007, 05:00 »
0
bueno se q esta raro esto pero pues es la primera vez q trabajo en delphi y aun no me hubico bien.

la cosa es esta

tengo dos cajas una en la cual al presionar un boton una se pondra del color q yo elija d un radiogroup y tambien tengo q chekiar con un checkbox en cual ira si en la 1 o la 2
y hacer un boton para poner blancas las dos cajas o paneles.

la cuestion es q se como poner los colores y lo d las checkobs pero no se como poner el codigo para el boton d aplicar el color me confundo en esa parte.

aki les dejo ell codigo q llevo


Código: Text
  1. unit assignment;
  2.  
  3. interface
  4.  
  5. uses
  6.   Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  7.   Dialogs, StdCtrls, ExtCtrls;
  8.  
  9. type
  10.   TForm2 = class(TForm)
  11.     Label1: TLabel;
  12.     Label2: TLabel;
  13.     Panel1: TPanel;
  14.     Panel2: TPanel;
  15.     Button1: TButton;
  16.     Button2: TButton;
  17.     CheckBox1: TCheckBox;
  18.     CheckBox2: TCheckBox;
  19.     RadioGroup1: TRadioGroup;
  20.     procedure Button1Click(Sender: TObject);
  21.     procedure RadioGroup1Click(Sender: TObject);
  22.     procedure Button2Click(Sender: TObject);
  23.     procedure CheckBox1Click(Sender: TObject);
  24.     procedure CheckBox2Click(Sender: TObject);
  25.   private
  26.     { Private declarations }
  27.   public
  28.     { Public declarations }
  29.   end;
  30.  
  31. var
  32.   Form2: TForm2;
  33.  
  34. implementation
  35.  
  36. {$R *.dfm}
  37.  
  38. procedure TForm2.Button1Click(Sender: TObject);
  39. begin
  40.  
  41.     panel1.color := clwhite;
  42.     panel2.color := clwhite;
  43.    
  44. end;
  45. procedure TForm2.RadioGroup1Click(Sender: TObject);
  46. begin
  47.         Case  RadioGroup1.ItemIndex of
  48.  
  49.           0 : RadioGroup1.Color := clorange;
  50.           1 : RadioGroup1.Color := clYellow;
  51.           2 : RadioGroup1.Color := clblue;
  52.           3 : RadioGroup1.Color := cl green;
  53.  
  54.         end;
  55.  
  56.        
  57. end;
  58.  
  59. procedure TForm2.Button2Click(Sender: TObject);
  60. begin
  61.  
  62.  
  63.  
  64.  Case  RadioGroup1.ItemIndex of
  65.  
  66.           0 : RadioGroup1.Color := clorange;
  67.           1 : RadioGroup1.Color := clYellow;
  68.           2 : RadioGroup1.Color := clblue;
  69.           3 : RadioGroup1.Color := cl green;
  70.  
  71.  end;
  72.  
  73.         if checkbox1.Checked then
  74.              panel1.color :=   RadioGroup1.ItemIndex;
  75.  
  76.         if checkbox2.Checked then
  77.              panel2.color :=   RadioGroup1.ItemIndex;
  78.  
  79.  
  80.  
  81. end;
  82.  
  83. procedure TForm2.CheckBox1Click(Sender: TObject);
  84. begin
  85.  
  86.  if checkbox1.Checked then
  87.     TForm2.Button2Click(Sender: TObject);
  88.  
  89. end;
  90.  
  91. procedure TForm2.CheckBox2Click(Sender: TObject);
  92. begin
  93.  
  94.     if checkbox2.Checked then
  95.     TForm2.Button2Click(Sender: TObject);
  96.  
  97.  
  98. end;
  99.  
  100. end.
  101.  
  102.  


por cierto no me deja el delphi probar a ver como va, alguien sabe porq sera?? me sale el RUN  deshabilitado.

juanlaplata

  • Miembro activo
  • **
  • Mensajes: 28
    • Ver Perfil
Re: Ayuda Con Formulario
« Respuesta #1 en: Jueves 22 de Febrero de 2007, 14:21 »
0
Bueno varias cosas para observar:
Código: Text
  1.  
  2. procedure TForm2.RadioGroup1Click(Sender: TObject);
  3. begin
  4.        Case  RadioGroup1.ItemIndex of
  5.            0 : RadioGroup1.Color := clorange;
  6.            1 : RadioGroup1.Color := clYellow;
  7.            2 : RadioGroup1.Color := clblue;
  8.            3 : RadioGroup1.Color := cl green;
  9.        end;
  10. end;
  11.  
  12.  
Podrias guardarlo en una variable TColor. Para despues en el momento indicado hacer:  Panel x .color := VarColor;
Código: Text
  1.  
  2. public
  3.     VarColor : TColor;
  4.  
  5. procedure TForm2.RadioGroup1Click(Sender: TObject);
  6. begin
  7.        Case  RadioGroup1.ItemIndex of
  8.            0 : VarColor := clorange;
  9.            1 : VarColor  := clYellow;
  10.            2 : VarColor  := clblue;
  11.            3 : VarColor  := cl green;
  12.        end;
  13. end;
  14.  
  15.  
En esta parte del codigo le cambias el color al radioGroup y segun tu enunciado no debe hacer eso.
Código: Text
  1.  
  2. procedure TForm2.Button2Click(Sender: TObject);
  3. begin
  4. Case  RadioGroup1.ItemIndex of
  5.          0 : RadioGroup1.Color := clorange;
  6.          1 : RadioGroup1.Color := clYellow;
  7.          2 : RadioGroup1.Color := clblue;
  8.          3 : RadioGroup1.Color := cl green;
  9. end;
  10.        if checkbox1.Checked then
  11.             panel1.color :=   RadioGroup1.ItemIndex;
  12.  
  13.        if checkbox2.Checked then
  14.             panel2.color :=   RadioGroup1.ItemIndex;
  15. end;
  16.  
  17.  
En este evento solo tendrias que asignar el color, pues el case es el mismo que se hace cuando se clikea la opcion del color.
entonces quedaria:
Código: Text
  1.  
  2. procedure TForm2.Button2Click(Sender: TObject);
  3. begin
  4.        if checkbox1.Checked then
  5.             panel1.color :=   VarColor;
  6.  
  7.        if checkbox2.Checked then
  8.             panel2.color :=   VarColor;
  9. end;
  10.  
  11.  
VarColor sera asignada en en RadioGruopClick.
Espero haber entendido lo que dudabas, y si te sirve. si no lo volvemos a ver. Suerte.

moyo18

  • Nuevo Miembro
  • *
  • Mensajes: 9
    • Ver Perfil
Re: Ayuda Con Formulario
« Respuesta #2 en: Viernes 23 de Febrero de 2007, 00:04 »
0
hola intente hacerlo como lo dices pero me da un error aki

begin
      Case  RadioGroup1.ItemIndex of
          0 : RadioGroup1.color := ClOrange;
          1 : RadioGroup1.Color := clYellow;
          2 : RadioGroup1.Color := clBlue;
          3 : RadioGroup1.Color := clGreen;
      end;

usando el varcolor o el radiogropu1. no se porq me da el error : :( , tambine tengo q hacer si los dos checkbox estan chekados q se ponga el color q esta elegido en los paneles.

pwero bueno porq me dara ese error, si yo miro q esta bien el codigo.

moyo18

  • Nuevo Miembro
  • *
  • Mensajes: 9
    • Ver Perfil
Re: Ayuda Con Formulario
« Respuesta #3 en: Viernes 23 de Febrero de 2007, 00:21 »
0
hola ya estuvo amigo muchas gracias, ya se ahora como hacerle, t agradesco por la ayuda.

el problema es q el CLORANGE  no lo reconoce porq quizas no hay un color naranja o algo espcifico asi, bueno no se hasta ahroita buscare en google a ver q encuentro gracias.