Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Lazarus, FreePascal, Kylix, etc. (https://www.clubdelphi.com/foros/forumdisplay.php?f=14)
-   -   Ayuda con código en delphi (https://www.clubdelphi.com/foros/showthread.php?t=93007)

nico.white 18-04-2018 22:05:48

Ayuda con código en delphi
 
Hola amigos buenas tardes, tengo el siguiente problema:

Eh creado un botón y al lado un shape... lo que quiero q haga es que al pulsar el boton cambie de color el shape.

lo hace pero el form cambia su color a negro la verdad nose donde esta el problema. pq solo tengo eso en el código.

desde ya muchas gracias por la pronta respuesta
Código Delphi [-]
begin
  color := random(7);
  case ( color ) of
    1 : shape1.brush.color := clRed;
    2 : shape1.brush.color := $000080FF;
    3 : shape1.brush.color := clYellow;
    4 : shape1.brush.color := clLime;
    5 : shape1.brush.color := clGreen;
    6 : shape1.brush.color := clBlue;
    7 : shape1.brush.color := clNavy;
  end;
end;

egostar 18-04-2018 22:17:35

Hola

Estás utilizando la propiedad Color del Form.

Cuando haces esto:

Código Delphi [-]
  color := random(7);

En realidad estás haciendo ésto:

Código Delphi [-]
  Form1.Color := random(7);

Para que eso no te suceda debes de utilizar una variable como te muestro a continuación

Código Delphi [-]
procedure TForm1.Button1Click(Sender: TObject);
var
  colorTmp: Integer;
begin
  colorTmp := random(7);
  case ( colorTmp ) of
    1 : shape1.brush.color:=clred;
    2 : shape1.brush.color:=$000080FF;
    3 : shape1.brush.color:=clyellow;
    4 : shape1.brush.color:=clLime;
    5 : shape1.brush.color:=clgreen;
    6 : shape1.brush.color:=clBlue;
    7 : shape1.brush.color:=clnavy;
  end;
end;


Saludos

nico.white 18-04-2018 23:35:15

gracias
 
Muchisimas gracias ! lo voy a tener en cuenta para más adelante si bien habia declarado una variable "color" y seguia haciendo lo mismo (pq tomaba el del form) cambie a colortmp como sugeriste y todo sin problemas. muchisimas gracias por la pronta respuesta. saludos


La franja horaria es GMT +2. Ahora son las 03:28:56.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi