Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

m4rkynh0z

preciso criar checkbox em tempo de execução

Recommended Posts

Olá a todos,

estou precisando criar alguns checkbox dinamicamente, aqui no forum encontrei um post explicando como criar.

preciso criar checkbox em tempo de execução

 

O problema é que preciso criar checkbox, que estão dentro de um groupBox que esta localizado dentro de um pageControl.

Alguem teria algum exemplo de como fazer isso?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Precisa criar o TPageControl e o TGroupBox da mesma forma que cria o TCheckBox, uma auda para iniciar...

 

unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls, Buttons, ComCtrls;

type
  TForm1 = class(TForm)
	BitBtn1: TBitBtn;
	procedure BitBtn1Click(Sender: TObject);
  private
	{ Private declarations }
	function PageControl(objetoOwner: TWinControl): TWinControl;
	function GroupBox(objetoOwner: TWinControl): TWinControl;
	procedure CheckBox(objetoOwner: TWinControl; rotulo: string; coluna, altura: integer);
  public
	{ Public declarations }
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}

function TForm1.PageControl(objetoOwner: TWinControl): TWinControl;
var
	page: TPageControl;
begin
page:=TPageControl.Create(objetoOwner);
page.Parent:=objetoOwner;
page.Height:=250;
page.Top:=10;
page.Width:=550;
page.Left:=10;

PageControl:=page;
end;

function TForm1.GroupBox(objetoOwner: TWinControl): TWinControl;
var
	grupo: TGroupBox;
begin
grupo:=TGroupBox.Create(objetoOwner);
grupo.Caption:=' Teste: ';
grupo.Parent:=objetoOwner;
grupo.Height:=225;
grupo.Top:=10;
grupo.Width:=525;
grupo.Left:=10;

GroupBox:=grupo;
end;

procedure TForm1.CheckBox(objetoOwner: TWinControl; rotulo: string; coluna, altura: integer);
var
	check: TCheckBox;
begin
check:=TCheckBox.Create(objetoOwner);
check.Parent:=objetoOwner;
check.Caption:=rotulo;
check.Top:=(altura * 17);
check.Width:=175;
check.Left:=(coluna * 160) - 145;
end;

procedure TForm1.BitBtn1Click(Sender: TObject);
var
	x, y: integer;
	owner: TWinControl;
begin
owner:=GroupBox(PageControl(Self));
for y:=1 to 3 do
	for x:=1 to 11 do
		CheckBox(owner,'Check Box (Col: ' + IntToStr(y) + ', Linha: ' + IntToStr(x) + ')',y,x);
end;

end.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Olá amigos.

 

Você tem que criar um objeto derivado da classe TSpeedButton e após instanciá-lo, acessar a propriedade Glyph que é responsável por carregar imagens para dentro do seu SpeedButton.

 

Até a próxima. :thumbsup:

Compartilhar este post


Link para o post
Compartilhar em outros sites

Olá amigos.

 

Você tem que criar um objeto derivado da classe TSpeedButton e após instanciá-lo, acessar a propriedade Glyph que é responsável por carregar imagens para dentro do seu SpeedButton.

 

Até a próxima. :thumbsup:

 

Bom dia amigão, obrigado pro colaborar. Eu tentei fazer como você explicou só que não preencheu o botão com imagem.

 

Usei:

 

Glyph.Assign(nil);

ImageList1.GetBitmap(0, SpeedButton1.Glyph);

 

Poderia mostrar um exemplo? Grato

Compartilhar este post


Link para o post
Compartilhar em outros sites

Olá amigo.

 

Tente buscar com o método LoadFromFile( caminho_da_imagem ) do Glyph

 

Até a próxima. :thumbsup:

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.