我有这个代码:
我第一次打开它时,它正是我需要它做的……一个学生回答问题,根据正确/错误的数量,它会显示一个笑脸……我第一次打开它的表格时,它会起作用并且确实如此,但第二次一切正常,但未显示笑脸
procedure TFUNIDAD1_ACTIVIDAD_COMPLETA.Ipregunta1Click(Sender: TObject);
var
x: Integer;
begin
for x := 1 to 6 do
if Sender = Preguntas[x] then // Valida el panel que generó el evento
begin
// para Moverlo
Respuestas[vCodigo].Top := Preguntas[x].Top; // Mueve el boton ubicado en la posicion capturada
//en la variable codigo
Respuestas[vCodigo].Left := Preguntas[x].Left;/////////
//para validar
if x = vCodigo then // Valida si la posicion del panel que genero el evento
begin //es igual a la que esta almacenada en Codigo
Imagenes[x].Picture.LoadFromFile('C:\Educso\Imagenes\Actividades\accept.bmp');
// si son iguales pone Correcto
vBuenas := vBuenas + 1;
end
else
begin
Imagenes[x].Picture.LoadFromFile('C:\Educso\Imagenes\Actividades\delete.bmp');
// De lo Contrario pone Incorrecto
vMalas := vMalas + 1;
end;
end;
if vMalas + vBuenas = 6 then
begin
if vBuenas = 6 then
icarita1.Visible := True
// ICarita.Picture.LoadFromFile('C:\Educso\Imagenes\Actividades\Muy Bien.png')
else
if (vbuenas < 6) and (vBuenas <> 0) then
icarita2.Visible := True
// ICarita.Picture.LoadFromFile('C:\Educso\Imagenes\Actividades\Bien.png')
else
if vBuenas = 0 then
icarita3.Visible := True;
// ICarita.Picture.LoadFromFile('C:\Educso\Imagenes\Actividades\Malo-1.png');
end;
end;
可能是因为我调用表格的方式吗?
if assigned (ACTIVIDAD_COMPLETA)
ACTIVIDAD_COMPLETA.free;
ACTIVIDAD_COMPLETA.close;
ACTIVIDAD_COMPLETA:=TFUNIDAD1_ACTIVIDAD_COMPLETA.CREATE(APPLICATION);
ACTIVIDAD_COMPLETA.show;
vMalas 和 vBuenas 计算有多少正确/错误的问题。
var FUNIDAD1_ACTIVIDAD_COMPLETA: TFUNIDAD1_ACTIVIDAD_COMPLETA;
Respuestas:Array [1..6] of TIMAGE;
//Respuestas Preguntas:Array[1..6] of TIMAGE;
//Preguntas Imagenes:Array[1..6] of TIMAGE;
//Cotejos vCodigo:integer;
vBuenas:Integer=0;
vMalas:Integer=0;