D3POD Posted June 16, 2012 Report Share Posted June 16, 2012 Boas pessoal, tenho aqui um problema... Criei um teclado para a minha aplicação, mas entretanto surgiu a necessidade de um outro form ter o teclado... Decidi então que o ideal era num form ter o teclado e depois chama-lo nos forms que precisa-se dele... Até aqui acho que a ideia tem pernas para andar, o problema é que tenho o código assim: textbox.text += "1" ou seja se colocar o teclado num form à parte vou ter... form2.textbox.text += "1" Agora e se eu chamar este mesmo teclado para ele adicionar o "1" no form3? Como posso fazer? Existe maneira de colocar um condição que caso for chamado do form3 para o código passar para form3.textbox.text += "1" ? Cumprimentos Link to comment Share on other sites More sharing options...
petvetbr Posted June 16, 2012 Report Share Posted June 16, 2012 Porque você não passa o textbox que o teclado for utilizar como parâmetro para o teclado? Outra forma de fazer é fazer seu teclado disparar eventos e assinar estes eventos no form que for aberto. Fernando Lage Bastos - MCP/MCTS/MCPD Link to comment Share on other sites More sharing options...
D3POD Posted June 16, 2012 Author Report Share Posted June 16, 2012 Como posso fazer isso do utilizar como parametro? Link to comment Share on other sites More sharing options...
petvetbr Posted June 16, 2012 Report Share Posted June 16, 2012 Crie uma propriedade na classe do teclado do tipo TextBox. Quando for mudar de form, coloque o textbox do novo form nesta propriedade. Na classe teclado mude o código que está utilizando de forma a ele trabalhar com a propriedade que foi criada. Fernando Lage Bastos - MCP/MCTS/MCPD Link to comment Share on other sites More sharing options...
Leudassdf Posted June 16, 2012 Report Share Posted June 16, 2012 Nao percebi bem o que desejas mas ja tens o designer feito certo? crias-te um teclado? Teclado virtual é isso? Link to comment Share on other sites More sharing options...
D3POD Posted June 17, 2012 Author Report Share Posted June 17, 2012 Sim é isso mesmo 😉 Já está criado e bem desenhado, falta só agora coloca-lo a funcionar para a textbox que pretendo mesmo que o form não seja o mesmo. Link to comment Share on other sites More sharing options...
petvetbr Posted June 17, 2012 Report Share Posted June 17, 2012 Já conseguiu fazer o que tinha te recomendado? Se não, seria interessante você colocar o código desta parte do teclado para ter orientarmos como fazer. Fernando Lage Bastos - MCP/MCTS/MCPD Link to comment Share on other sites More sharing options...
D3POD Posted June 17, 2012 Author Report Share Posted June 17, 2012 O problema é que não percebo muito de classes e assim... então estou a estudar como se faz para puder avançar... Sinceramente ainda estou muito iniciado nesta àrea... Link to comment Share on other sites More sharing options...
thoga31 Posted June 17, 2012 Report Share Posted June 17, 2012 (edited) O que deves fazer é abrir a form do teclado quando uma outra form necessitar dele. Imagina que a FormGira tem a TextBoxPorreira e queres que o teclado escreva nesta TextBox e não noutra. Vais fazer algo como: FormTeclado.Show; FormTeclado.Definir(Me, Me.TextBoxPorreira) Ou seja, mostras o teclado virtual e defines que ele vai escrever na FormFixe (como é ela mesma a chamar o teclado, deves usar "Me"), e a TextBox na qual vais escrever é a TextBoxPorreira. Já na FormTeclado, onde tens o teu teclado, deverás incluir um método deste género: Private Janela_Alvo As System.Windows.Forms 'salvo erro, é este o caminho do espaço de nomes... Private TextBox_Alvo As TextBox Public Sub Definir(ByRef Jan As System.Windows.Forms, ByRef tb As TextBox) Me.Janela_Alvo = Jan Me.TextBox_Alvo = tb End Sub Em cada botão de uma letra, deverás fazer isto: Janela_Alvo.TextBox_Alvo.Text = "A" 'Para o caso da tecla A Estás a entender a ideia? Poder-se-á usar outros métodos, mas este parece-me o mais simples. Cumprimentos 😉 Edited June 17, 2012 by thoga31 Knowledge is free! Link to comment Share on other sites More sharing options...
D3POD Posted June 17, 2012 Author Report Share Posted June 17, 2012 Vou estudar bem este código 😉 Já dou noticias 😉 Ver se consigo perceber e aplicar... 😛 Link to comment Share on other sites More sharing options...
Leudassdf Posted June 18, 2012 Report Share Posted June 18, 2012 Se ainda es iniciado encalhar melhor copiares o design para os outros forms. no primeiro form clicas sobre o objecto que contem as "teclas" e vais para o evento click certo? logo se reparar nesse codigo que deve ser tipo isto: Private Sub Label1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Label1.Click repara naquilo que diz handles Label1.Click se colocares a frente de handles Label1.Click uma virgula e colocares a Label2.click o que te vai acontecer e que ao clicares na primeira label ou na segunda vai fazer aqulilo que colocas dentro desse private sub certo? Depois no codigo colocas algo tipo isto: Textbox1.text+=sender.text sendo que o sender te vai devolver o texto que tens na label. Logo depois se copiares o design para os outros forms e se tiveres os mesmos nomes nas labels basta clicares numa das labels, depois estas no evento click certo, aqui colas o codigo que inseriste no form1 depois dos handles. e fazer o ...sender.text? Fiz-me entender? Ex: no primeiro form Private Sub Label1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Label1.Click, Label2.click textbox1.text+=sender.text End Sub resumindo basta introduzires todas as "nomes" labels que tens como as letras,caractes que tens no teu teclado virtual e depois e so copy paste para o outro form. no segundo form Private Sub Label1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Label1.Click, Label2.click End Sub Link to comment Share on other sites More sharing options...
D3POD Posted June 18, 2012 Author Report Share Posted June 18, 2012 Boas se bem percebi então por exemplo crio dois forms... um combum botão e uma textbox e outro só com uma textbox... No evento click desse botão coloco o que me disses-te? Já estou a fazer uma grande confusão xD Já andei para aqui a testar mas isto nem arranca 😛 Link to comment Share on other sites More sharing options...
Leudassdf Posted June 19, 2012 Report Share Posted June 19, 2012 como tencionas criar o teclado? com labels,buttons? Link to comment Share on other sites More sharing options...
D3POD Posted June 19, 2012 Author Report Share Posted June 19, 2012 Com buttons... Link to comment Share on other sites More sharing options...
Leudassdf Posted June 19, 2012 Report Share Posted June 19, 2012 ja tens os buttons todos certo? Clica 2 vezes sobre por exemplo a letra "A" para ires para o codigo. Ao chegares ao codigo teras algo do genero private sub..... handles (button que clicas-te) e depois colocas uma virgula e adicionas o (nome do button que contem a letra "B") e assim sucessivamente. dentro do evento coloca uma msgbox com algum codigo so para veres o que acontece. se colocares dentro da msgbox(sender.text) ao clicares no A devolve-te A ao clicares no "B" devolve B. e se colocares o nome de todos os buttons que ao clicares em qualquer button ele ira devolver o texto que se encontra nele. Percebes-te? Se nao conseguires entender diz-me os nomes dos 2 ou tres buttons para eu te tentar explicar via codigo. Link to comment Share on other sites More sharing options...
D3POD Posted June 19, 2012 Author Report Share Posted June 19, 2012 Desculpa lá, mas estou mesmo a apanhar papeis 😛 Então no A coloco o B separado por virgula... como o meu teclado é numerico logo no 1 punha o 1 e 2, no 2 metia o 2 e 3 etc... certo? Mas depois no código do form coloco o que? Só que eu quero é usar este teclado em vários forms... depende de qual está show... Link to comment Share on other sites More sharing options...
thoga31 Posted June 19, 2012 Report Share Posted June 19, 2012 O método que eu te tinha dito deverá funcionar lindamente... só tens de ter em cada form um botão que abra a form de modo a que esta saiba quem é que precisa dele. Knowledge is free! Link to comment Share on other sites More sharing options...
Leudassdf Posted June 19, 2012 Report Share Posted June 19, 2012 O método que eu te tinha dito deverá funcionar lindamente... só tens de ter em cada form um botão que abra a form de modo a que esta saiba quem é que precisa dele. so para dizer que o teu metodo funciona. simplesmente quis dar outras opçoes ao D3POD. Cumprimentos Link to comment Share on other sites More sharing options...
thoga31 Posted June 19, 2012 Report Share Posted June 19, 2012 (edited) so para dizer que o teu metodo funciona. simplesmente quis dar outras opçoes ao D3POD. Oi? Mas estamos a competir? Se assim é, agradeço o convite, but I'm out. @D3POD, ambos os métodos são funcionais e ambos têm as suas vantagens e desvantagens. É tudo uma questão de ver se consegues percebê-las, e tentar aplicar os conhecimentos que te tentámos transmitir. Tenta ver qual é que é mais intuitivo para ti. Não tentes seguir todas as ondas que te aparecem pela frente, escolhe aquela que poderá ser a melhor para tu surfares 😉 Em qualquer dos casos, precisas de estudar um pouco melhor o que são os eventos dos controlos e o que é que fazem e quando ocorrem - ao longo deste tópico tenho notado algumas falhas nas bases de VB.NET. Por isso, aconselho-te a veres o seguinte: - Eventos - Handlers - "Ligação" entre forms distintas, e como passar informação de umas para outras Cumprimentos 😉 Edited June 19, 2012 by thoga31 Knowledge is free! Link to comment Share on other sites More sharing options...
Leudassdf Posted June 19, 2012 Report Share Posted June 19, 2012 Oi? Mas estamos a competir? Se assim é, agradeço o convite, but I'm out. @D3POD, ambos os métodos são funcionais e ambos têm as suas vantagens e desvantagens. É tudo uma questão de ver se consegues percebê-las, e tentar aplicar os conhecimentos que te tentámos transmitir. Tenta ver qual é que é mais intuitivo para ti. Não tentes seguir todas as ondas que te aparecem pela frente, escolhe aquela que poderá ser a melhor para tu surfares 😉 Em qualquer dos casos, precisas de estudar um pouco melhor o que são os eventos dos controlos e o que é que fazem e quando ocorrem - ao longo deste tópico tenho notado algumas falhas nas bases de VB.NET. Por isso, aconselho-te a veres o seguinte: - Eventos - Handlers - "Ligação" entre forms distintas, e como passar informação de umas para outras Cumprimentos 😉 Thoga31 nao estamos a competir. Penso que interpretas-te mal as minhas palavras. De qualquer das formas peço desculpa por alguma coisa. cumprimentos Desculpa lá, mas estou mesmo a apanhar papeis 😛 Então no A coloco o B separado por virgula... como o meu teclado é numerico logo no 1 punha o 1 e 2, no 2 metia o 2 e 3 etc... certo? Mas depois no código do form coloco o que? Só que eu quero é usar este teclado em vários forms... depende de qual está show... o teu 1,2,3 e apenas o texto dos teus buttons. se clicares somente uma vez no button vais ver que te aparecem as propriadades do mesmo certo? Ai tens que ver qual e o nome da propriedade name. e e esse o nome que deves colocar. Fiz-me entender? Cumprimentos Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now