Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Varios (https://www.clubdelphi.com/foros/forumdisplay.php?f=11)
-   -   Como hago para enfocar un RadioGroup? (https://www.clubdelphi.com/foros/showthread.php?t=2648)

danytorres 31-07-2003 20:29:04

Como hago para enfocar el item de un RadioGroup?
 
Hola a todos los del foro. tengo un RadioGroup con dos items en las propiedades le puedo colocar el TabOrder se lo coloco en 0 para sea el primero en marcarse al momento de abrir el formulario, el problema esta en que necesito que se me coloque en foco el primer items, pero ni siquiero se coloca en foco todo el RadioGroup1. Doy gracias a quien me pueda ayudar.

___________________
Un saludo a todos...

roman 31-07-2003 22:07:15

Necesitas poner la propiedad TabStop del RadioGroup en true.

Nota sin embargo que el RadioGroup no indica visualmente que tiene el foco por lo que parece que nadie tuviera el foco. Para poder colocar el foco en el primer item lo único que se me ocurre es que utilices el método SelectFirst del RadioGroup. No obstante hay dos problemas:

1. Este es un método protegido de manera que no puedes acceder a él directamente. Para hacerlo declara:

Código:

type
  TUPControl = class(TWinControl)

y usas el evento OnEnter del RadioGroup:

Código:

procedure TForm1.RadioGroup1Enter(Sender: TObject);
begin
  TUPControl(RadioGroup1).SelectFirst;
end;

2. Lo anterior no selecciona exactamente el primer item sino el que este marcado. Si no hay ninguno marcado entonces sí selecciona el primero.

// Saludos

danytorres 31-07-2003 22:12:55

Gracias por responder, este codigo sirve igual para un DBRadioGroup1?.

____________________________
Un saludo a todos...

marcoszorrilla 31-07-2003 22:27:53

Sino me equivoco igual con esto también te puede valer:

Código:

procedure TForm1.FormActivate(Sender: TObject);
begin
Radiogroup1.SetFocus;
Radiogroup1.ItemIndex:=0;
end;

También puedes utilizar la propiedad ActiveControl del formulario para comenzar dándole el enfoque al RadioGroup.

Un Saludo.

roman 31-07-2003 22:31:18

Cita:

Posteado originalmente por marcoszorrilla
Código:

procedure TForm1.FormActivate(Sender: TObject);
begin
Radiogroup1.SetFocus;
Radiogroup1.ItemIndex:=0;
end;


El problema aquí es que no sólo se selecciona (se pone el foco) sino que también se marca y no sé si esto es lo que desea.

// Saludos

danytorres 01-08-2003 00:37:36

Gracias por responder. Si solo deseo que se coloque en foco mas no que se marque.


______________________
Un saludos a todos...


La franja horaria es GMT +2. Ahora son las 14:00:37.

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