USAR MESMO NOMES EM VÁRIO BUTTOM

 Tópico anterior Próximo tópico Novo tópico

USAR MESMO NOMES EM VÁRIO BUTTOM

VB.NET

 Compartilhe  Compartilhe  Compartilhe
#490130 - 21/08/2019 23:14:25

GENUSS
SORRISO
Cadast. em:Setembro/2017


Boa noite pessoal gostaria do de tirar uma dúvida, no vb6 quando eu queria usar vários controles buttom com a mesma propiedade Name eu só mudava o Index, E pergunta e no vb.net de eu quiser fazer o mesmo como seria ou teria outro controle pra isso?

De uma força ai pessoal sou programador iniciante ainda.

Jean Silva Frazao

#490133 - 22/08/2019 00:57:50

NOWLIGHTS
SUMARE
Cadast. em:Abril/2011


Cara, acho que no vb.net não tem como deixar tudo com a propriedade Name igual... Tenta colocar na própria propriedade a index sei lá .. Button_1... Button_2

__________________________________
- Everyone has a chance


#490134 - 22/08/2019 07:35:52

GENUSS
SORRISO
Cadast. em:Setembro/2017


Citação:
:
Cara, acho que no vb.net não tem como deixar tudo com a propriedade Name igual... Tenta colocar na própria propriedade a index sei lá .. Button_1... Button_2


Pois é era fácil antes evitava de escrever um mundareu de codigo, tenho que usar 80 butom relacionado a uma varavel, agora vou ter que fazer 80 variável uma pra casa controle kkm

Jean Silva Frazao

#490135 - 22/08/2019 08:39:12

GUIMORAES
ITAPETININGA
Cadast. em:Agosto/2009


Acho que tem uma forma melhor de se fazer isto, você está pensando errado.
Pra te ajudar, descreva melhor o que você pretende fazer, se possível, posta uma imagem.



#490136 - 22/08/2019 09:21:58

OMAR2007
MONTES CLAROS
Cadast. em:Maio/2019


Verifica.
http://www.macoratti.net/14/07/vbn_arrc1.htm



#490137 - 22/08/2019 09:25:51

GENUSS
SORRISO
Cadast. em:Setembro/2017


Citação:
:
Acho que tem uma forma melhor de se fazer isto, você está pensando errado.
Pra te ajudar, descreva melhor o que você pretende fazer, se possível, posta uma imagem.

Tipo assim eu tenho um form onde vai ficar as mesas, cada buttom será uma mesa, o que eu gostaria de fazer era simplificar tipo no vb6 q agente so muda o Index e pode copiar os button quantas vezes quiser, com a propiedade name sendo a mesma entendeu? Porque assim não tem como eu usar minha variável.... codigo seria assim

'Variam onde recebe o número das mesas
Em módulo fiz assim...

Public Mesas as string

No form fiz assim...

Mesa = btnMesa.text

Mas ou menos assim

Jean Silva Frazao

#490138 - 22/08/2019 10:10:09

KERPLUNK
RIO GRANDE DO SUL
Cadast. em:Junho/2009


Membro da equipe
Você pode adicionar uma tag em cada botão e usar uma mesma procedure que pega o valor da tag, associa o evento de click de todos eles com essa procedure e pronto.

_______________________________________________________________________
Virei Oráculo!
The end is nigh, be ready for the nukes!


#490139 - 22/08/2019 10:25:11

GUIMORAES
ITAPETININGA
Cadast. em:Agosto/2009


Bom, como eu imaginei, você está pensando errado (desculpe, mas é a verdade).

Primeiro, não é assim que você deve fazer, já pensou se um restaurante aumenta ou diminui uma mesa, eles terão que chamar você para ajustar isto no sistema (criar mais um botão)? O primeiro a se cansar será o proprietário do restaurante.
A solução é bem simples, use Orientação a Objetos.

Pense, uma mesa é um registro no banco de dados, ou melhor dizendo, uma linha na tabela.
Vamos pensar em uma tabela para isto:


ID | NUMERO_MESA | QTD_PRODUTOS | TOTAL_MESA
-------------------------------------------------------------------------------
1   |  15                        |  10                          | 150,00
2   |  17                        |  1                            | 10,00
3   |  5                          |  3                            | 85,00


Esta é a nossa estrutura no banco de dados, é a partir daí que iremos construir nossa aplicação.
Obviamente, você terá uma tela que vai cadastrar as mesas (fazer o insert na tabela), e qualquer outra operação (como atualizar, deletar e exibir as mesas).
Exibir as mesas significa fazer um Select, certo?

Se você vai fazer um select, precisa armazenar isto em algum lugar, vamos sintetizar isto em uma classe, com a estrutura igual a tabela.


Public Class Mesas

   Public Property Id as Integer
   Public Property NumeroMesa as Integer
   Public Property QtdProdutos as Integer
   Public Property TotalMesa as Decimal

End Class


Quando fizermos o select na tabela, iremos popular isto em nossa classe.

Dim listaMesas as New List(Of Mesas)

'Exemplo
Do While meuReader.Read()

    Dim mesa as New Mesas
    mesa.Id = meuReader.Item("Id")
    mesa.NumeroMesa = meuReader.Item("numero_mesa")
    .....
    
    listaMesas.Add(mesa)

Loop

*** Estou sintetizando isto por cima, não é a melhor forma de se fazer, mas é para te dar um norte. Procure utilizar um ORM de acesso a dados (como o Entity Framework).

Se você tem seu objeto (sua classe mesas) já populada, agora é só percorrer ele e listar isto em algum lugar (na tela que vai exibir a lista de mesas).
Se você quer utilizar botões para abrir as mesas, eu utilizaria um componente para "abrigar" estes botões, como o FlowLayoutPanel, mas de longe isto é inviável (por conta do desempenho).

Então, neste caso, para adicionar os botões a tela, é só percorrer seu objeto, e adicionar o mesmo aos controle FlowLayoutPanel.

  

For Each mesa In Mesas

   Dim botao as new Buttom
   botao.Name = mesa.ID
   botao.Text = mesa.NumeroMesa
  
   AddHandler botao.Click, AddressOF botao_Click
  
   FlowLayoutPanel.Controls.Add(botao)

Next



Como disse acima, isto é um exemplo, que você pode tomar por base para começar sua aplicação.
Se você não entendeu nada disto, sugiro que estude mais programação, Orientação a Objetos, como criar uma aplicação em camadas e como criar e estruturar um banco de dados.





#490152 - 23/08/2019 08:11:21

NICKOSOFT
SANTO ANDRE
Cadast. em:Maio/2009


so pra fortalecer o q ja foi dito, pensando bem errado, é o q foi dito sobre aumentar ou diminuir as mesas tem q chamar pra mudar o programa......imagina os programas q se ve pra baixar pela internet, o seu vem limitado ao numero de mesas......
começa q vc deveria trabalhar dinamicamente com esses tais botoes....
da mesma forma q cria dinamicamente, serao listados dinamicamente....
até tenho algo disso usando banco de dados, pq preciso criar options conforme a lista de opcoes criadas e salvas no bd
codigo repetido é perda de tempo pra nao dizer errado.....vc vai usar o mesmo codigo 2 vezes ja pode criar uma funcao rotina ou afins pra isso......

eu tenho a mais plena certeza q vc devia rever tudo q ja tentou fazer ai, nao é a primeira vez q vem com ideias na contra mao da pratica....



 Tópico anterior Próximo tópico Novo tópico


Para responder este tópico o login é requerido
Se você já possui uma conta de usuário por favor faça seu login
Se você não possui uma conta de usuário use a opção Criar usuário