Página 1 de 2 12 ÚltimoÚltimo
Resultados 1 a 10 de 18
  1. #1
    Membro
    Data de Ingresso
    Aug 2010
    Localização
    Manaus - AM
    Posts
    198

    Question [Ajuda] Criação de Labels em run-time

    Olá mestres eu gostaria de uma ajuda com um código ou pelo menos parte dele que me ajude a criar Labels em run-time estou usando o delphi 7 e esse código servirá para uma aplicação de hotel que mostrará quantos quartos estão disponíveis podendo fazer a alteração de números de quartos eu optei por tentar fazer dessa maneira por que já vi um código que fazia isso e porque será o projeto final do curso técnico portanto toda a ajuda será bem vinda
    Desde já grato...

  2. #2
    Amigo explique melhor,pois não sei se sou muito burro ou vc nao explico direito.
    Voce quer que no label mostre quantos quartos disponiveis? é isso?
    para isso vc esta usando algum banco de dados?

  3. #3
    Bom em todo caso ta aqui como criar
    Código:
    procedure CriarLabel(TheWord : String);
    
    var
      I: integer;
      NewLabel: TLabel;
    begin
      for I := 1 to Length(TheWord) do begin
        NewLabel := TLabel.Create(self);
        NewLabel.Parent := self;
        NewLabel.Top := 20;
        NewLabel.Left := I * 20;
        NewLabel.Caption := TheWord[I];
      end;
    Fonte: http://www.festra.com/wwwboard/messages/13045.html
    PS:Modifiquei um pouco o código
    end;
    MP Com dúvidas e pedidos de ajudas serão IGNORADAS
    "Mentes fracas não pensam,corpos fracos não lutam."

    Microsoft Technology Associate: Software Development Fundamentals (C#
    )

  4. #4
    PS²
    ficou faltando um end;
    MP Com dúvidas e pedidos de ajudas serão IGNORADAS
    "Mentes fracas não pensam,corpos fracos não lutam."

    Microsoft Technology Associate: Software Development Fundamentals (C#
    )

  5. #5
    Membro
    Data de Ingresso
    Aug 2010
    Localização
    Manaus - AM
    Posts
    198
    Citação Postado originalmente por showboy Ver Post
    Amigo explique melhor,pois não sei se sou muito burro ou vc nao explico direito.
    Voce quer que no label mostre quantos quartos disponiveis? é isso?
    para isso vc esta usando algum banco de dados?
    Eu estou usando o Interbase que já vem instalado com o Delphi e o que eu quero fazer é mostrar numa tela todos os quartos disponíves mas de modo visual e não quantitativo, ou seja, eu não vou dizer que tem 10 quartos vagos eu vou fazer uma tela que mostre:
    Quarto N° + Status + Nível(Suíte, Presidencial, Simples e etc.) + Um botão que se o quarto estiver vago o ocupe.

  6. #6
    Membro
    Data de Ingresso
    Aug 2010
    Localização
    Manaus - AM
    Posts
    198
    Citação Postado originalmente por R0Dr1g0. Ver Post
    Bom em todo caso ta aqui como criar
    Código:
    procedure CriarLabel(TheWord : String);
    
    var
      I: integer;
      NewLabel: TLabel;
    begin
      for I := 1 to Length(TheWord) do begin
        NewLabel := TLabel.Create(self);
        NewLabel.Parent := self;
        NewLabel.Top := 20;
        NewLabel.Left := I * 20;
        NewLabel.Caption := TheWord[I];
      end;
    Fonte: http://www.festra.com/wwwboard/messages/13045.html
    PS:Modifiquei um pouco o código
    end;
    Obrigado pela atenção e eu acho que esse código vai servir para o que eu estou querendo, Mas será que ele tambem serve para criação de TButton em run-time, por que criar ele cria(Eu fiz um programinha e mostrou os Button's) mas como eu vou saber qual o Button que a pessoa clicou?


    Desde já grato pela ajuda...

  7. #7
    O parametro Sender de toda função identifica quem chamou
    Por Ex:
    Código:
    procedure TForm1.Button1Click(Sender: TObject) ;
     begin
       if Sender = Button1 then
        ShowMessage('Button1 clicado!')
       else if Sender = MenuItem1 then
        ShowMessage('MenuItem1 clicado!')
       else
        ShowMessage('??? clicked!') ;
     end;
    Pelo que eu entendi é essa a sua dúvida
    MP Com dúvidas e pedidos de ajudas serão IGNORADAS
    "Mentes fracas não pensam,corpos fracos não lutam."

    Microsoft Technology Associate: Software Development Fundamentals (C#
    )

  8. #8
    Membro
    Data de Ingresso
    Aug 2010
    Localização
    Manaus - AM
    Posts
    198
    Citação Postado originalmente por R0Dr1g0. Ver Post
    O parametro Sender de toda função identifica quem chamou
    Por Ex:
    Código:
    procedure TForm1.Button1Click(Sender: TObject) ;
     begin
       if Sender = Button1 then
        ShowMessage('Button1 clicado!')
       else if Sender = MenuItem1 then
        ShowMessage('MenuItem1 clicado!')
       else
        ShowMessage('??? clicked!') ;
     end;
    Pelo que eu entendi é essa a sua dúvida

    Assim o código que eu pensei em fazer foi pegar o numero de registros e jogar numa repetição(for) e a quantidade de label's a ser criada iria ser pela quantidade de registros e idem para os Button's já que estes vão ficar ao lado dos Label's.
    Mas vamos supor eu criei a tela e está assim:

    Quarto 1 -- Suite -- Ocupado
    Quarto 2 -- Suite -- Vago [Ocupar?]
    Quarto 3 -- Suite -- Ocupado
    Quarto 4 -- Suite -- Vago [Ocupar?]

    [Ocupar?] -> Seria o Button

    Como eu saberia qual quarto o hóspede quer ocupar você entendeu agora o que eu quero fazer???

    Bom de qualquer forma muito obrigado pela ajuda...

  9. #9
    Cara porque você não usa um banco de dados?
    MP Com dúvidas e pedidos de ajudas serão IGNORADAS
    "Mentes fracas não pensam,corpos fracos não lutam."

    Microsoft Technology Associate: Software Development Fundamentals (C#
    )

  10. #10
    Membro
    Data de Ingresso
    Aug 2010
    Localização
    Manaus - AM
    Posts
    198
    Olá R0Dr1g0. obrigado pela sua ajuda e desculpa a demora a responder mas não pude, não ter internet é díficil...,
    Eu estou usando um banco de dados e criei uma tabela chamada Quartos e é apartir dela que eu vou fazer a tela:

    Quarto 1 -- Presidencial -- Ocupado
    Quarto 2 -- Suite -- Vago [Ocupar?]
    Quarto 3 -- Normal -- Ocupado
    Quarto 4 -- Suite -- Vago [Ocupar?]

Tags para este Tópico

Permissões de Postagem

  • Você não pode iniciar novos tópicos
  • Você não pode enviar respostas
  • Você não pode enviar anexos
  • Você não pode editar suas mensagens
  •