Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > OOP
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Grupo de Teaming del ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 29-07-2007
Avatar de mRoman
mRoman mRoman is offline
Miembro
 
Registrado: nov 2003
Posts: 599
Poder: 21
mRoman Va por buen camino
Agregar Botones a ScrollBox

Hola Amigos....

Solicito de su ayuda.....fijense q estoy creando botones en tiempo de ejecucion, y tengo un ScrollBox donde quiero agregar dichos botones. Les comento q la parte de crear los botones ya esta resuelto, pero ahora necesito integrarlos a un scrollbox, ya que en estos momentos lo unico q hice fue colocarlos en direccion donde este ultimo (scroll) se encuentra cuando se ejecuta el sistema, pero si se agregan mas 6 botones, estos rebasan los limites del scroll, y aparte los botones se quedan "encima" de este....

Necesito q cuando se rebase los limites, se activen las barras de desplazamiento del scroll, pero esto solo sucede si agrego los botones en tiempo de diseño, pero eso no me sirve de mucho, necesito hacerlo en tiempo de ejecucion.

Gracias y espero haberme explicado...
Les paso el codigo de lo q llevo
Código Delphi [-]
procedure TfrmRegServicios.FormShow(Sender: TObject);
Var
PosY:Integer;
begin
   gBoxTipoServicio.Caption:='';
   qryServicios.Close;
   qryServicios.Open;
   PosY:=100;
   n:=1;
   While not qryServicios.Eof do
   begin
      Botones[n]:=TButton.Create(Self);
      with Botones[n] do
      begin
          Caption:=qryServicios.fieldbyname('DESCRIPCION').AsString;
          Parent:=self;
          Height:=71;
          Top:=PosY;
          PosY:=PosY+Height+10;
          Left:=16;
          Width:=97;
          OnClick:=OnButtonClick;
          Name:='btn'+IntToStr(n);
          Tag:=qryServicios.fieldbyname('CLAVE_SERVICIO').AsInteger;
      end;
      qryServicios.Next;
      inc(n);
   end;

end;

procedure TfrmRegServicios.OnButtonClick(Sender:TObject);
var
nServicio:Integer;
begin
    with Sender as tButton do begin
       nServicio:=(Sender as tButton).Tag;
       gBoxTipoServicio.Caption:=(Sender as tButton).Caption;
    end;
    qryPrenda.Close;
    qryPrenda.ParamByName('SERVICIO').AsInteger:=nServicio;
    qryPrenda.Open;
    qryPrenda.FetchAll;
end;
Ahora como integro estos botones a un scrollbox ?
__________________
Miguel Román

Afectuoso saludo desde tierras mexicanas....un aguachile?, con unas "cetaseas" bien "muertas"?, VENTE PUES !!

Última edición por mRoman fecha: 29-07-2007 a las 03:49:00.
Responder Con Cita
  #2  
Antiguo 29-07-2007
Avatar de Caral
[Caral] Caral is offline
Miembro Premium
 
Registrado: ago 2006
Posts: 7.659
Poder: 25
Caral Va por buen camino
Hola
A buen santo te arrimas, pero bueno, aqui esto lo que pienso:
Código Delphi [-]
unit Unit1;

interface

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

type
  TForm1 = class(TForm)
    procedure FormCreate(Sender: TObject);
    procedure OnButton1Click(Sender: TObject);
    procedure OnButton2Click(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form1: TForm1;
  Button1,Button2: TButton;
  ScrollBox1: TScrollBox;
implementation

{$R *.dfm}

procedure TForm1.FormCreate(Sender: TObject);
begin
    ScrollBox1 := TScrollBox.Create(Self);
    ScrollBox1.Parent := Self;
  with ScrollBox1 do
  begin
    Button1:= TButton.Create(ScrollBox1);
    Button1.Parent := ScrollBox1;
    Button1.Caption := 'Botón';
    Button1.Left:= 20;
    Button1.Top:= 10;
    Button1.OnClick := OnButton1Click;

    Button2:= TButton.Create(ScrollBox1);
    Button2.Parent := ScrollBox1;
    Button2.Caption := 'Botón';
    Button2.Left:= 100;
    Button2.Top:= 10;
    Button2.OnClick := OnButton2Click;
end;
end;

procedure TForm1.OnButton1Click(Sender: TObject);
begin
  ShowMessage('Presionaste el boton 1!');
end;

procedure TForm1.OnButton2Click(Sender: TObject);
begin
  ShowMessage('Presionaste el boton 2!');
end;

end.
Saludos
Responder Con Cita
  #3  
Antiguo 29-07-2007
Avatar de mRoman
mRoman mRoman is offline
Miembro
 
Registrado: nov 2003
Posts: 599
Poder: 21
mRoman Va por buen camino
Ok...gracias !! nuevamente por tu ayuda....

Ya pude hacerlo....gracias a algo q observe en tu codigo, es la propiedad Parent...solo le agregue ScrollBox2 y LISTO !!
Parent:=ScrollBox2;

Y ya quedo....anteriormente tenia en el codigo q te pase, lo siguiente:

Parent:=Self; (A SI MISMO).....AQUI ESTABA EL ERROR !!....
__________________
Miguel Román

Afectuoso saludo desde tierras mexicanas....un aguachile?, con unas "cetaseas" bien "muertas"?, VENTE PUES !!
Responder Con Cita
Respuesta



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
sincronizar dos scrollbox potlanos Varios 2 06-06-2007 01:38:38
Scrollbox Walcasar OOP 2 07-11-2006 12:37:28
Agregar botones al Internet explorer dicatek API de Windows 0 25-07-2006 20:34:58
no se usar el scrollbox federiconqn21 Varios 4 04-04-2006 15:51:02
ScrollBox altp Varios 0 16-09-2004 11:55:48


La franja horaria es GMT +2. Ahora son las 03:07:40.


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
Copyright 1996-2007 Club Delphi