Ver la Versión Completa : RadioGroup1.ItemIndex
FGarcia
17-06-2006, 20:27:10
Saludos!
la pregunta es ¿que falla aqui?
este codigo funciona OK!
procedure TForm2.Label1Click(Sender: TObject);
begin
Label1.Caption := inttostr(radiogroup1.ItemIndex );
end;
pero este NO!!
Procedure Tform2.ConsultaNumeroOrden;
var
NumOrden, basSel : integer;
begin
NumOrden := StrToInt(NumeroOrden);
Label1.Caption := inttostr(RadioGroup1.ItemIndex);
end;
a lo que me refiero en ambos codigos es a Label1.Caption. Cuando ejecuto el segundo codigo aparece:
"Error access violation en module xxxxxxxx de adress yyyyy"
he visto varios hilos en el foro y en todos el codigo es similar, por lo que no entiendo que pasa. Uso Delphi 7.
Gracias por la ayuda!
marcoszorrilla
17-06-2006, 20:55:15
procedure TForm1.Label1Click(Sender: TObject);
begin
Label1.Caption := inttostr(radiogroup1.ItemIndex );
end;
procedure TForm1.Button1Click(Sender: TObject);
var
NumOrden, basSel : integer;
begin
//NumOrden := StrToInt(NumeroOrden);
Label1.Caption := inttostr(RadioGroup1.ItemIndex);
end;
El código lo he probado y funciona sin ningún problema en D7, he tenido que anular la línea de NumOrdern ya que numeroOrden no existe y no sé donde la tendrás declarada.
Un Saludo.
FGarcia
17-06-2006, 21:24:55
Gracias por la respuesta Marcos!
Si observas el codigo que envié el que funciona es un evento OnClick y el que no funciona es un Procedure; el codigo qu tu probaste son dos eventos OnClick
Bueno eso es lo que observe ya en mi programa que el Onclick funciona pero el procedure no.
Saludos!
marcoszorrilla
17-06-2006, 22:08:40
procedure TForm1.Button1Click(Sender: TObject);
var
NumOrden, basSel : integer;
begin
//NumOrden := StrToInt(NumeroOrden);
Form2.Label1.Caption := inttostr(Form2.RadioGroup1.ItemIndex);
end;
Un Saludo.
FGarcia
18-06-2006, 16:20:38
Hola !
Nuevamente por aqui. Marcos ese ultimo codigo tampoco funciona, mira hice esta prueba:
Procedure Tform1.ConsultaNumeroOrden; //este es un procedimiento
begin
Label1.Caption := IntToStr(RadioGroup1.ItemIndex);
end;
al cual llamo desde aqui:
Procedure TForm1.Button1Click(Sender: TObject);
begin
ConsultaNumeroOrden;
end;
y funciona perfectamente! Mi "teoria" es que el problema tiene que ver con Sender: TObject, aunque a esas profundidades de delphi aun no llego.
Gracias por la paciencia!
¡Feliz Día del Padre!
marcoszorrilla
18-06-2006, 16:33:06
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
StdCtrls, ExtCtrls;
type
TForm1 = class(TForm)
RadioGroup1: TRadioGroup;
Button1: TButton;
Label1: TLabel;
procedure Button1Click(Sender: TObject);
procedure ConsultaNumeroOrden;
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
implementation
{$R *.DFM}
procedure TForm1.Button1Click(Sender: TObject);
begin
ConsultaNumeroOrden;
end;
Procedure Tform1.ConsultaNumeroOrden; //este es un procedimiento
begin
Label1.Caption := IntToStr(RadioGroup1.ItemIndex);
end;
end
Comprobado que así te va a funcionar.
Un Saludo.
FGarcia
21-06-2006, 20:45:03
Con el permiso de Neftali y Delphi.com.ar:
"Más tiempo dedicado a la pregunta=Mejores respuestas."
"Dedique el tiempo suficiente para formular su pregunta si pretende que alguien dedique su tiempo en contestarla."
Y si efectivamente nunca comente que el procedure ConsultaNumeroOrden lo llamo desde el Form3, me refiero a mi primer mensaje de este hilo y tambien a que algo tiene que ver el parametro (Sender: TObject).
Gracias y Disculpas por la falta de informacion.
vBulletin v3.6.8, Derechos ©2000-2024, Jelsoft Enterprises Ltd.