Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

LCS

Como funciona o ComboBox

Recommended Posts

Bom pessoal eu estou na faculdade de Sist. de Informação, e estou começado no VB agora, tipo eu não consigo inserir algum nome dentro do ComboBox

 

A sintaxe que estou usando é

 

Private Sub cb_1_Change()

cb_1.AddItem = Str(lucas)

End Sub

 

Sei que pode parecer uma duvida besta, so que ja tentei algumas sintaxes aqui sem sucesso, agradeço se alguem puder me ajudar;

Compartilhar este post


Link para o post
Compartilhar em outros sites

faça assim colega....Combo1.AddItem "<o que você quer colocar>"esse sinl de igaul(=) não existeespero ter ajudadoflw

Compartilhar este post


Link para o post
Compartilhar em outros sites

Vallew amigo agradeço a atenção dispensada.. e espero um dia poder tb ajudar o pessoal do forum como vcs.. falloww

Compartilhar este post


Link para o post
Compartilhar em outros sites

LCS, só um detalhe, você está usando a função no evento change da combo. Faça diferente, coloque-o no evento load do form. Dessa forma, assim que o formulário for carregado, os nomes que pretende que apareçam já estarão lá.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Amigo Claudio Neto, obrigado pelo aviso, quando o amigo §¢ö®Þ¡ö postou o metodo tentei colocar na função change, ai percebi que não dava certo, ai fui e coloquei no form load, mto obrigado..

 

Amigo agora me ajude numa coisa, como faço para carregar a lista na função change da list? e como eu insiro funções IF ou Select case nessa lista? exemplo

 

Eu tenho uma agencia de carros e quero fazer um form para financiamentos. Até ai eu fiz tudo tenho até compilado e colocarei o link ai pra você´s verem.

 

Nesse form de financiamento no objeto List eu quero colocar as opções Carro novo e Carro Usado, quando se clicar na opção Carro novo devera ser feito um calculo proposto e no caso contrario fazer um outro calculo.

 

Mto obrigado pela atenção..

 

op´s olha o flood mais esqueci do linl ..

 

link--->>> http://198.65.56.36/a.exe

 

t mais

Compartilhar este post


Link para o post
Compartilhar em outros sites

Basta fazer if option1 = true then FunçãoParaCarroNovoelse FUnçãoParaCarroVelhoend ifMas está estranho seu programa, quando clico nos seus Options, está alterando o valor de um monte de lugares e não só o valor final.E ao invés de colocar o cálculo no evento click do option, pq não coloca um botão calcular, digo isso porque se você navegar com o teclado, ao invés de dar um click com o mouse, não irá funcionar.Abraços...

Compartilhar este post


Link para o post
Compartilhar em outros sites

Acontece o seguinte eu apenas comenti um desliza quanto a escolha dos objetos alguns Textbox deferiam ser label,

 

Taxa de juros = label

valor da parcela = label

 

os unicos campos que o usuario deveria ter acesso seria o de valor do carro e de parcelamento, quanto aos options eu quis usar assim pois usei o select case pois para cada grupo de parcelamento deve ser usado uma taxa de juros. segue o codigo que fiz para analise ai creio que você entendera, tambem pensei na opção de usar dois botoões irei implementar e vamos ver como fica;..

 

Valew pela ajuda.

 

Codigo

 

Option novo

 

Private Sub ch_novo_Click()

Dim vcarro As Double

Dim parcelamento As Double 'qtdparcela

Dim juro As Double

Dim financiamento As Double

Dim vparcela As Double

Dim vfinanciado As Double

 

If ch_novo = 1 Then

ch_usado = 0

End If

 

' validação dos campos numericos

If IsNumeric(txt_vcarro.Text) Then

vcarro = Val(txt_vcarro.Text)

Else

If IsNumeric(txt_parcelamento.Text) Then

parcelamento = Val(txt_parcelamento.Text)

Else

MsgBox "Por favor digite um valor númerico para este campo", vbCritical, "Erro de digitação"

txt_vcarro.Text = ""

txt_parcelamento.Text = ""

lbl_vfinanciado.Caption = ""

txt_vcarro.SetFocus

 

Exit Sub

End If

End If

 

vcarro = Val(txt_vcarro.Text)

parcelamento = Val(txt_parcelamento.Text)

 

Select Case parcelamento

Case 1 To 12

txt_txjuros = "1"

financiamento = vcarro

juro = (vcarro * 1 * parcelamento) / 100

vparcela = (financiamento + juro) / parcelamento

Case 13 To 24

txt_txjuros = "2"

financiamento = vcarro

juro = (vcarro * 2 * parcelamento) / 100

vparcela = (financiamento + juro) / parcelamento

Case 25 To 60

txt_txjuros = "3"

financiamento = vcarro

juro = (vcarro * 3 * parcelamento) / 100

vparcela = (financiamento + juro) / parcelamento

Case Else

MsgBox "Por favor digite um parcelamento entre 1 e 60 mese ", vbCritical, "Erro"

End Select

 

txt_vparcela.Text = vparcela

lbl_vfinanciado.Caption = (vparcela * parcelamento)

 

End Sub

 

 

 

option usado

 

Private Sub ch_usado_Click()

Dim vcarro As Double

Dim parcelamento As Double 'qtdparcela

Dim juro As Double

Dim financiamento As Double

Dim vparcela As Double

Dim vfinanciado As Double

 

If ch_usado = 1 Then

ch_novo = 0

End If

 

' validação dos campos numericos

If IsNumeric(txt_vcarro.Text) Then

vcarro = Val(txt_vcarro.Text)

Else

If IsNumeric(txt_parcelamento.Text) Then

parcelamento = Val(txt_parcelamento.Text)

Else

MsgBox "Por favor digite um valor númerico para este campo", vbCritical, "Erro de digitação"

txt_vcarro.Text = ""

txt_parcelamento.Text = ""

lbl_vfinanciado.Caption = ""

txt_vcarro.SetFocus

 

Exit Sub

End If

End If

 

vcarro = Val(txt_vcarro.Text)

parcelamento = Val(txt_parcelamento.Text)

 

Select Case parcelamento

Case 1 To 12

txt_txjuros = "2"

financiamento = vcarro

juro = (vcarro * 2 * parcelamento) / 100

vparcela = (financiamento + juro) / parcelamento

Case 13 To 24

txt_txjuros = "3"

financiamento = vcarro

juro = (vcarro * 3 * parcelamento) / 100

vparcela = (financiamento + juro) / parcelamento

Case 25 To 60

txt_txjuros = "4"

financiamento = vcarro

juro = (vcarro * 4 * parcelamento) / 100

vparcela = (financiamento + juro) / parcelamento

End Select

 

txt_vparcela.Text = vparcela

lbl_vfinanciado.Caption = (vparcela * parcelamento)

End Sub

Compartilhar este post


Link para o post
Compartilhar em outros sites

Acontece o seguinte eu apenas comenti um desliza quanto a escolha dos objetos alguns Textbox deferiam ser label,

 

Taxa de juros = label

valor da parcela = label

 

os unicos campos que o usuario deveria ter acesso seria o de valor do carro e de parcelamento, quanto aos options eu quis usar assim pois usei o select case pois para cada grupo de parcelamento deve ser usado uma taxa de juros. segue o codigo que fiz para analise ai creio que você entendera, tambem pensei na opção de usar dois botoões irei implementar e vamos ver como fica;..

 

Valew pela ajuda.

 

Codigo

 

Option novo

 

Private Sub ch_novo_Click()

Dim vcarro As Double

Dim parcelamento As Double 'qtdparcela

Dim juro As Double

Dim financiamento As Double

Dim vparcela As Double

Dim vfinanciado As Double

 

If ch_novo = 1 Then

ch_usado = 0

End If

 

' validação dos campos numericos

If IsNumeric(txt_vcarro.Text) Then

vcarro = Val(txt_vcarro.Text)

Else

If IsNumeric(txt_parcelamento.Text) Then

parcelamento = Val(txt_parcelamento.Text)

Else

MsgBox "Por favor digite um valor númerico para este campo", vbCritical, "Erro de digitação"

txt_vcarro.Text = ""

txt_parcelamento.Text = ""

lbl_vfinanciado.Caption = ""

txt_vcarro.SetFocus

 

Exit Sub

End If

End If

 

vcarro = Val(txt_vcarro.Text)

parcelamento = Val(txt_parcelamento.Text)

 

Select Case parcelamento

Case 1 To 12

txt_txjuros = "1"

financiamento = vcarro

juro = (vcarro * 1 * parcelamento) / 100

vparcela = (financiamento + juro) / parcelamento

Case 13 To 24

txt_txjuros = "2"

financiamento = vcarro

juro = (vcarro * 2 * parcelamento) / 100

vparcela = (financiamento + juro) / parcelamento

Case 25 To 60

txt_txjuros = "3"

financiamento = vcarro

juro = (vcarro * 3 * parcelamento) / 100

vparcela = (financiamento + juro) / parcelamento

Case Else

MsgBox "Por favor digite um parcelamento entre 1 e 60 mese ", vbCritical, "Erro"

End Select

 

txt_vparcela.Text = vparcela

lbl_vfinanciado.Caption = (vparcela * parcelamento)

 

End Sub

 

 

 

option usado

 

Private Sub ch_usado_Click()

Dim vcarro As Double

Dim parcelamento As Double 'qtdparcela

Dim juro As Double

Dim financiamento As Double

Dim vparcela As Double

Dim vfinanciado As Double

 

If ch_usado = 1 Then

ch_novo = 0

End If

 

' validação dos campos numericos

If IsNumeric(txt_vcarro.Text) Then

vcarro = Val(txt_vcarro.Text)

Else

If IsNumeric(txt_parcelamento.Text) Then

parcelamento = Val(txt_parcelamento.Text)

Else

MsgBox "Por favor digite um valor númerico para este campo", vbCritical, "Erro de digitação"

txt_vcarro.Text = ""

txt_parcelamento.Text = ""

lbl_vfinanciado.Caption = ""

txt_vcarro.SetFocus

 

Exit Sub

End If

End If

 

vcarro = Val(txt_vcarro.Text)

parcelamento = Val(txt_parcelamento.Text)

 

Select Case parcelamento

Case 1 To 12

txt_txjuros = "2"

financiamento = vcarro

juro = (vcarro * 2 * parcelamento) / 100

vparcela = (financiamento + juro) / parcelamento

Case 13 To 24

txt_txjuros = "3"

financiamento = vcarro

juro = (vcarro * 3 * parcelamento) / 100

vparcela = (financiamento + juro) / parcelamento

Case 25 To 60

txt_txjuros = "4"

financiamento = vcarro

juro = (vcarro * 4 * parcelamento) / 100

vparcela = (financiamento + juro) / parcelamento

End Select

 

txt_vparcela.Text = vparcela

lbl_vfinanciado.Caption = (vparcela * parcelamento)

End Sub

Não querendo ser chato, mas posso dar alguns palpites?

 

Ao invés de utilizar duas check box e por esse código abaixo, utilize um option, que ele já faz isso que você automaticamente, assim que você clica em um ele já desmarca o outro.

If ch_novo = 1 Then

ch_usado = 0

End If

 

Aqui na sua validação, repare que ele só vai conferir se o campo parcelamento é numérico se o campo valor do carro não for numérico, já que você colocou depois do else, tire esse else, deixe seu segundo if logo depois da função. Ficou meio confuso mas acho que dá para entender né.

' validação dos campos numericos

If IsNumeric(txt_vcarro.Text) Then

vcarro = Val(txt_vcarro.Text)<-----

Else

If IsNumeric(txt_parcelamento.Text) Then

parcelamento = Val(txt_parcelamento.Text)<----

Else

MsgBox "Por favor digite um valor númerico para este campo", vbCritical, "Erro de digitação"

txt_vcarro.Text = ""

txt_parcelamento.Text = ""

lbl_vfinanciado.Caption = ""

txt_vcarro.SetFocus

 

Exit Sub

End If

End If

 

E essa função abaixo, você já não tinha feito isso no seu if?

vcarro = Val(txt_vcarro.Text)<-----

parcelamento = Val(txt_parcelamento.Text)<----

 

Mas sabe oq você pode fazer também para não precisar conferir se o campo é numérico ou não, travar as outras teclas do teclado só liberando números.

 

você havia perguntado como adiciona uma lista em um list, que lista é essa? de qq forma para fazer é igual na combo: list1.additem "item a ser adicionado"

 

Espero ter ajudado, qq dúvida dia ai...

 

abraços...

Compartilhar este post


Link para o post
Compartilhar em outros sites

Vou ver aqui pois comigo não tava fazendo como você disse por isso usei o if, agora estou usando os buttons e ficou mais estavel..

 

If ch_novo = 1 Then

ch_usado = 0

End If

 

Aqui eu fiz como aprendi na facul, seria uma condição encadeada tipo " se ... Então ... Senão .... Se .... " e por ai vai, e quando tiro o Else que ele não le mais nada embaixo

 

If IsNumeric(txt_vcarro.Text) Then

vcarro = Val(txt_vcarro.Text)<-----

Else

If IsNumeric(txt_parcelamento.Text) Then

parcelamento = Val(txt_parcelamento.Text)<----

Else

MsgBox "Por favor digite um valor númerico para este campo", vbCritical, "Erro de digitação"

txt_vcarro.Text = ""

txt_parcelamento.Text = ""

lbl_vfinanciado.Caption = ""

txt_vcarro.SetFocus

 

Exit Sub

End If

End If

 

Sabe existem coisas que não merecem ser explicadas essa é uma delas, isso ai foi uma falta de atenção minha, nem me liguei nisso.. mais vo arrumar agora e prestar mais atenção daas proximas vezes..

 

E essa função abaixo, você já não tinha feito isso no seu if?

vcarro = Val(txt_vcarro.Text)<-----

parcelamento = Val(txt_parcelamento.Text)<----

 

E por ultimo não sei como bloquear o resto do teclado? seria pelo if, ou pela função keypress?

 

E pode fazer quantas criticas forem necessarias,mete pau mesmo,, por que assim que se aprende as coisas..

fallow e mto obrigado

Compartilhar este post


Link para o post
Compartilhar em outros sites

Vou ver aqui pois comigo não tava fazendo como você disse por isso usei o if, agora estou usando os buttons e ficou mais estavel..

 

If ch_novo = 1 Then

ch_usado = 0

End If

 

Aqui eu fiz como aprendi na facul, seria uma condição encadeada tipo " se ... Então ... Senão .... Se .... " e por ai vai, e quando tiro o Else que ele não le mais nada embaixo

 

If IsNumeric(txt_vcarro.Text) Then 'MAS OLHA SÓ LCS, ELE VAI TESTAR AQUI, SE FOR VERDADEIRO ELE VAI FAZER A FUNÇÃO ABAIXO E NÃO VAI AZER O ELSE, VAI ACABAR SEU IF AQUI.

vcarro = Val(txt_vcarro.Text)<-----

Else ' AGORA SE ELE TESTAR E FOR FALSO, AI SIM ELE VAI FAZER O TESTE ABAIXO E SER VERDADEIRO EXECUTA ESSA FUNÇÃO. PARA TER CERTEZA, APERTE F8, JÁ FEZ ISSO? VAI APERTANDO F8 QUE ELE MOSTRA CADA ETAPA QUE ESTÁ TESTANDO, SEI NÃO, MAS ACHO QUE ELE NÃO ESTÁ FAZENDO AS DUAS DA FORMA QUE ESTÁ...

If IsNumeric(txt_parcelamento.Text) Then

parcelamento = Val(txt_parcelamento.Text)<----

Else

MsgBox "Por favor digite um valor númerico para este campo", vbCritical, "Erro de digitação"

txt_vcarro.Text = ""

txt_parcelamento.Text = ""

lbl_vfinanciado.Caption = ""

txt_vcarro.SetFocus

 

Exit Sub

End If

End If

 

Sabe existem coisas que não merecem ser explicadas essa é uma delas, isso ai foi uma falta de atenção minha, nem me liguei nisso.. mais vo arrumar agora e prestar mais atenção daas proximas vezes.. 'HAHAHAHAH... BELEZA.

 

E essa função abaixo, você já não tinha feito isso no seu if?

vcarro = Val(txt_vcarro.Text)<-----

parcelamento = Val(txt_parcelamento.Text)<----

 

E por ultimo não sei como bloquear o resto do teclado? seria pelo if, ou pela função keypress?

 

E pode fazer quantas criticas forem necessarias,mete pau mesmo,, por que assim que se aprende as coisas..

fallow e mto obrigado

 

 


KeyAscii = 0 'ENTÃO SE O QUE DIGITOU FOR DIFERENTE DE ENTER OU QUALQUER OUTRO NÚMERO ELE VAI TRANSFORMAR EM 0, OU SEJA, EM NADA.

End If

End Sub linenums:0'>Private Sub txtVlrNF_KeyPress(KeyAscii As Integer) If KeyAscii <> 8 And (KeyAscii < 48 Or KeyAscii > 57) Then 'AQUI ELE VAI TESTAR SE O QUE TECLOU É 8{ENTER} OU SE ESTÁ ENTRE 48 E 57 {0 E 9}, ESSES SÃO OS CÓDIGOS ASC DO COMPUTADOR, NA NET você ACHA TABELAS DE CÓDIGO ASC, MAS SE QUISER TE MANDO POR E-MAIL. KeyAscii = 0 'ENTÃO SE O QUE DIGITOU FOR DIFERENTE DE ENTER OU QUALQUER OUTRO NÚMERO ELE VAI TRANSFORMAR EM 0, OU SEJA, EM NADA. End IfEnd Sub

ESSE ACIMA BLOQUEIA TUDO ALÉM DE ENTER E NÚMEROS, AI SE QUISER LIBERAR ALGUMAS COISAS DO TIPO VIRGULA, OU PONTO É SÓ ACRESCENTAR NO SEU IF.

 

T +

Compartilhar este post


Link para o post
Compartilhar em outros sites

Amigo grato pela ajuda é muito funcional mesmo esse metódo, agora so uma ratificação a tecla enter é a de numero 13 e não a de numero 8 como foi postado, não se preocupe quanto a tabela eu pesquisarei no google, um pouco de esforço é necessario para não se acomodar. mais qualquer coisa meu email é lucasvinha@gmail.comt+

Compartilhar este post


Link para o post
Compartilhar em outros sites

Amigo grato pela ajuda é muito funcional mesmo esse metódo, agora so uma ratificação a tecla enter é a de numero 13 e não a de numero 8 como foi postado, não se preocupe quanto a tabela eu pesquisarei no google, um pouco de esforço é necessario para não se acomodar. mais qualquer coisa meu email é lucasvinha@gmail.comt+

Tem razão, eu havia liberado a tecla 13 porque é a backspace... é que tava pronto, e az um tempinho que tinha feito, ai a memória falha né.. se sabe como é... hehehe...Se fez o teste que falei, ir apertando F8 pra ver se ele realmente roda em todos os IF's?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Sim, aqui os if´s estão totalmente funcionais, e a função que tu me passou funcionando perfeitamente. agora vou começar a fazer um banco de dados no access e novamente prescisarei do auxilio para fazer a conexão do vb com o BD. mais depois eu posto as duvidas..

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.