ramon Postado Abril 17, 2004 Denunciar Share Postado Abril 17, 2004 Tenho uma listbox contendo um item duploRamon NovatoQuando eu clicar nessa linha eu preciso carregar o item para um outro formSendo Ramon para um textbox e Novato para um optionbutton cuja o caption dele se chama Novato do form2Como faco para carregar o item clicado do lixbox ramon para textbox e novato para optionbuttom Novato do form2? Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Graymalkin Postado Abril 18, 2004 Denunciar Share Postado Abril 18, 2004 Um "item duplo"? Você diz um item no qual os espaços definem os diferentes elementos dentro dele? Se for, você pode usar a função Split() para separá-los para um vetor e daí preencher a textbox do outro form com o primeiro elemento do vetor e percorrer as optionbuttons do form procurando pelo segundo valor do vetor.Qualquer dúvida, 'stamos aí.Abraços,Graymalkin Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 ramon Postado Abril 18, 2004 Autor Denunciar Share Postado Abril 18, 2004 Não entendi muito.você poderia dar um exemplo de como fazer Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Graymalkin Postado Abril 18, 2004 Denunciar Share Postado Abril 18, 2004 Veja esse exemplo. No evento Load do form coloque:List1.AddItem "Ramon Novato" Depois coloque isso no evento Click de um botão: item_selecionado = List1.List(List1.ListIndex) vetor = Split(item_selecionado, " ") MsgBox vetor(0) MsgBox vetor(1)Execute o programa, selecione a linha na listbox e clique no botão.Abraços,Graymalkin Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 ramon Postado Abril 19, 2004 Autor Denunciar Share Postado Abril 19, 2004 Aqui da erro na hora que aperta no botão"Compile error Sub function not defined "E é nessa funcao splitO que pode serNão tem um outro jeito? Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Graymalkin Postado Abril 19, 2004 Denunciar Share Postado Abril 19, 2004 Seu VB é o 5? Acho que a função Split() só tem no VB6. Mas, sim, claro que tem outro jeito. Você pode percorrer a string até achar um espaço em branco e partir do mesmo jeito usando Mid(), Right() e/ou Left().Abraços,Graymalkin Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 ramon Postado Abril 19, 2004 Autor Denunciar Share Postado Abril 19, 2004 Po cara na boa coloca um exemplo da função que você sugeriuCarrega Ramon para textbox1 e Novato para textbox2 Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Graymalkin Postado Abril 19, 2004 Denunciar Share Postado Abril 19, 2004 Cara... tente se esforçar um pouco... a lógica da coisa já foi toda apresentada. De qualquer forma, experimente isso: sItem = List1.List(List1.ListIndex) pos = InStr(1, sItem, " ") If pos > 0 Then primeiro = Left(sItem, pos) segundo = Right(sItem, Len(sItem) - pos) Text1.Text = primeiro Text2.Text = segundo End IfAbraços,Graymalkin Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 ramon Postado Abril 20, 2004 Autor Denunciar Share Postado Abril 20, 2004 Foi mal caraDesculpeMas surgiu um problema aqui Mas acontece que quando carrego minha lista as vezes tem mais de dois nomes numa linhaTipo Ramon Lourenco NovatoRubem ProgramadorEntão eu gostaria de carregar somente o nome e o sobrenome para um textbox1 (ramon Lourenco) e a profissao Novato para o outro txetbox2As vezes tem somente o nome e a profisão ai beleza funcionaRubem ProgramadorMas quando coloco um sobrenome ele carega o nome para o textbox1 e o sobrenome e a profisão para o outro textbox Ficando assim: Textbox1Ramon Textbox2 LourencoProgramdorGostaria de saber como separar ou seja, ficar como esta abaixo e sem copiar os espacos em branco que ficam depois do nomeTextbox1Ramon LoureçoTextbox2NovatoFaz ai para você verNo load do formList1.AddItem "Ramon Lourenco Novato"List1.AddItem "Rubem Programador" Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Graymalkin Postado Abril 20, 2004 Denunciar Share Postado Abril 20, 2004 Com aquele exemplo mesmo você consegue fazer isso. Basta fazer uma simples modificação. No caso, a função InStr() procura pelo caracter " " (um espaço) na string. Para o que você quer, basta que ela procure por " " (dois espaços), já que o nome e o sobrenome não estarão separados por dois espaços e sim por um, enquanto que a separação do nome para a profissão será separada por dois ou mais espaços. E para tirar os espaços, basta usar as funções LTrim(), RTrim() e/ou Trim().Abraços,Graymalkin Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 ramon Postado Abril 20, 2004 Autor Denunciar Share Postado Abril 20, 2004 É realmente Valeu caraAproveitandoEm vez de eu carregar a profissão num textbox eu queria carregar num optionbutton ou seja seleciona eleTipo crio dois optionbuttonNovatoProgramadorDigamos que eu escolha no listbox Ramon Novato então ramon iria para o textbox1 e novato teria que seleciona automaticamenteo optionbutton NovatoComo fazer isso?Se não for pedir muito com exemplo Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Graymalkin Postado Abril 21, 2004 Denunciar Share Postado Abril 21, 2004 Vejamos: a propriedade Value do OptionButton define se ele está marcado ou não, e a propriedade Caption define a legenda que aparecerá nele. Portanto, se temos na variável "profissão" o nome da profissão que foi escolhida na listbox, bastará usar o If para verificar se a legenda do(s) OptionButton(s) existente(s) é igual a mesma. Por exemplo:if Option1.Caption=profissão then Option1.Value = True elseif Option2.Caption=profissão then Option2.Value = True elseif Option3.Caption=profissão then Option3.Value = True endifExistem ainda outras formas de se fazer isso (porém, para você que está começando, recomendo a alternativa apresentada acima). A título de curiosidade, apresento-as a seguir. Uma delas é criar um vetor de controles, dessa forma ao invés de Option1, Option2 e Option3, você teria Option1(0), Option1(1) e Option1(2). Dessa maneira é possível usar um For...Next para percorrer todos os índices de Option1. A outra forma é percorrer todos os controles do form, através da coleção Controls do mesmo. Para isso, pode-se usar um For Each...Next.Abraços,Graymalkin Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 ramon Postado Abril 21, 2004 Autor Denunciar Share Postado Abril 21, 2004 Eu usei essa mesma só que em vez da propiedade captiom coloquei a propiedade valueNão sei se é o certo, mas aqui funcionou?? If segundo = "Programador" Then Option1.Value = True If segundo = "Novato" Then Option2.Value = True Valeu!!! Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Graymalkin Postado Abril 21, 2004 Denunciar Share Postado Abril 21, 2004 Você não usou Value ao invés de Caption... note que são coisas distintas, não opostas. No caso, o que você fez foi verificar se a variável "segundo" tem o valor "Programador" ou "Novato" e daí marcou a OptionButton de acordo. Dá quase no mesmo que o exemplo que dei acima, a única diferença é que você descreve as strings no código ("Programador" e "Novato") enquanto que eu fiz usando a propriedade Caption das OptionButtons (que possuem exatamente estes mesmos valores).E, parabéns pela solução!!!Abraços,Graymalkin Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 William Rodrigues Postado Abril 22, 2004 Denunciar Share Postado Abril 22, 2004 Acho que deu prá tirar a dúvida né brother PS: Vou deixar o tópico aberto por mais um tempo, prá ver se aparece mais dúvidas, do contrário vou fechar o tópico !Abraços,William Rodrigues Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 ramon Postado Abril 24, 2004 Autor Denunciar Share Postado Abril 24, 2004 Bom tenho mais uma duvidaDepois de carregar o item selecionado para o textbox e para o optiombuttom eu quero fazer as modificações.Tenho um arquivo txt salvo de onde eu estou carregando os item para um listbox cuja a propiedade da fonte é Curier New para alinhar os itensEle aparece exatamente assim no listboxRamon Lourenco NovatoCarlos souza AprendizRubem ProgramadorDepois de carregado Ramon Lourenco para o textbox e Novato para o optiombutton, o usuario resolve fazer uma modificaçãoO o usuario coloca um outro nome digamos roman silva no textbox e escolhe o optiombuttom aprendiz e clica no botão modificarTerá que aparecer o nome Roman silva e a profissão Aprendiz no listbox em uma linha em baixo da profisão Aprendiz.Ficando assimRamon Lourenco NovatoCarlos souza AprendizRoman Silva Aprendiz Rubem ProgramadorComo fazer isso?? Citar Link para o comentário Compartilhar em outros sites More sharing options...
Pergunta
ramon
Tenho uma listbox contendo um item duplo
Quando eu clicar nessa linha eu preciso carregar o item para um outro form
Sendo Ramon para um textbox e Novato para um optionbutton cuja o caption dele se chama Novato do form2
Como faco para carregar o item clicado do lixbox ramon para textbox e novato para optionbuttom Novato do form2?
Link para o comentário
Compartilhar em outros sites
15 respostass a esta questão
Posts Recomendados
Participe da discussão
Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.