none
Criação de elementos RRS feed

  • Pergunta

  • Olá galera, estou precisando de uma ajuda com um projeto que estou desenvolvendo.

    Estou precisando fazer uma estrutura que segue na imagem abaixo:

    Explicando a estrutura...

    Bom, no canto direito da tela existe esse botão "CADASTRAR" que quando clicado abre uma nova janela para que o usuário cadastre o nome, tipo e categoria. Após o preenchimento o usuário clica no botão salvar e esses dados são salvos em uma nova linha de uma tabela do banco de dados (access).
    Toda essa parte eu já criei e está funcionando, o que eu preciso vem agora:

    Após tudo isso, eu preciso que o "NOME" que foi cadastrado seja jogando em uma Label (representada no desenho por essas 7 bolas) só que essa Label não existe até o momento. Ela só será criada quando um novo cadastro for efetuado (se possível).

    E eu preciso também colocar todas essas "Labels com os nomes", dentro de uma espécie de conteiner ou qualquer coisa que as abrigue, possibilitando quando houver mais de 7 Labels, que uma barra de rolagem na horizontal possa ser usada para que o usuário possa navegar por todas essas Labels

    Será que alguem sabe quais recursos posso utilizar para fazer essas duas coisas??
    Obrigado! João Pedro.

    sábado, 6 de outubro de 2012 20:34

Respostas

  • A grosso modo, seguindo a idéia do Vitor, eu criaria Objetos Label em tempo de execução, e inserindo um pós outro neste Panel.

    Um objeto Label não terá valores padrões, apenas receberá o valor do BD e irá inserir no Panel.

    Exemplo:

    Public WithEvents Lbl As New Label()
    
    Sub Inserir()
    
    Lbl = New Label()
    
            '''''''''''''''''''''''''''''''''''''''''''''''
            ' INFORMAÇÕES DO LABEL
            '''''''''''''''''''''''''''''''''''''''''''''''
            With Lbl
                .Name = "Label"
                .Text = "Texto do banco de dados"
                .Location = New System.Drawing.Point(50,50)
                .Size = New Size(30, 15)
            End With
    
            '''''''''''''''''''''''''''''''''''''''''''''''
            ' ADICIONA O CONTROLE
            '''''''''''''''''''''''''''''''''''''''''''''''
            Me.Panel1.Controls.Add(Lbl)
    
       
            '''''''''''''''''''''''''''''''''''''''''''''''
            ' ADICIONA OS COMANDOS PARA O ITEM
            '''''''''''''''''''''''''''''''''''''''''''''''
            AddHandler Lbl.MouseClick, AddressOf Lbl_Click
    
    End Sub

    Claro que você terá de criar cálculos para obter o local dele (pós o outro inserido), e você pode incrementar mais essa função. 

    E para acessar depois o evento, você usa o método "sender", que ele terá as propriedades do objeto criado.

    Qualquer dúvida, só postar!

    Att

    Alan
    terça-feira, 9 de outubro de 2012 23:09

Todas as Respostas

  • Oi.

    Após tudo isso, eu preciso que o "NOME" que foi cadastrado seja jogando em uma Label (representada no desenho por essas 7 bolas) só que essa Label não existe até o momento. Ela só será criada quando um novo cadastro for efetuado (se possível).

    Você já fez algo nessa parte?

    Esse container pode ser um Panel com a propriedade AutoScroll = true, assim, barras de rolagem aparecem quando precisar.

    terça-feira, 9 de outubro de 2012 16:14
  • A grosso modo, seguindo a idéia do Vitor, eu criaria Objetos Label em tempo de execução, e inserindo um pós outro neste Panel.

    Um objeto Label não terá valores padrões, apenas receberá o valor do BD e irá inserir no Panel.

    Exemplo:

    Public WithEvents Lbl As New Label()
    
    Sub Inserir()
    
    Lbl = New Label()
    
            '''''''''''''''''''''''''''''''''''''''''''''''
            ' INFORMAÇÕES DO LABEL
            '''''''''''''''''''''''''''''''''''''''''''''''
            With Lbl
                .Name = "Label"
                .Text = "Texto do banco de dados"
                .Location = New System.Drawing.Point(50,50)
                .Size = New Size(30, 15)
            End With
    
            '''''''''''''''''''''''''''''''''''''''''''''''
            ' ADICIONA O CONTROLE
            '''''''''''''''''''''''''''''''''''''''''''''''
            Me.Panel1.Controls.Add(Lbl)
    
       
            '''''''''''''''''''''''''''''''''''''''''''''''
            ' ADICIONA OS COMANDOS PARA O ITEM
            '''''''''''''''''''''''''''''''''''''''''''''''
            AddHandler Lbl.MouseClick, AddressOf Lbl_Click
    
    End Sub

    Claro que você terá de criar cálculos para obter o local dele (pós o outro inserido), e você pode incrementar mais essa função. 

    E para acessar depois o evento, você usa o método "sender", que ele terá as propriedades do objeto criado.

    Qualquer dúvida, só postar!

    Att

    Alan
    terça-feira, 9 de outubro de 2012 23:09