INPUTBOX PARA TEXTBOX

XAVIER 09/08/2012 19:42:11
#407615
Olá pessoal !

é possível substituir os inputbox por textbox, de tal maneira que esta operação seja realizada dentro de uma única textbox e que, enquanto eu não digitar a informação (A) então não chama a outra (B) ?


Private Sub Text2_KeyPress(KeyAscii As Integer)

If Text2.Text <> [Ô][Ô] And KeyAscii = 13 Then

On Error GoTo RazãoDoErro
Dim A ,B , C as Long
A = InputBox([Ô]Informe o 1° numero a somar : [Ô], [Ô]Soma[Ô], [Ô][Ô])
B = InputBox([Ô]Informe o 2° numero a somar : [Ô], [Ô]Soma[Ô], [Ô][Ô])
C = A + B
MsgBox C, vbInformation + vbOKOnly, [Ô]Soma[Ô]
Exit Sub
RazãoDoErro:
If Err.Number <> 0 Then
MsgBox [Ô]Ocorreu o seguinte erro : [Ô] & Err.Description & vbCrLf & [Ô]Código do erro : [Ô] & Err.Number, vbInformation + vbOKOnly, [Ô]Alerta![Ô]
End If

End If

End Sub

Desde já agradeço.
TECLA 09/08/2012 19:54:51
#407617
Dê um exemplo mais [Ô]claro[Ô] do que deseja implementar.
XAVIER 09/08/2012 20:09:38
#407620
TECLA, obrigado pela atenção!
Bom, preciso que, ao invés de ter que digitar nas caixas do inputbox, quando por exemplo eu digitasse numa textbox: [Ô]Somar[Ô], então nesta mesmo textbox invocasse
dentro da própria textbox >>> [Ô]Informe o 1° numero a somar :[Ô] e enquanto eu não informar um número, esta sub não me pede a próxima informação.
Porém, isso precisa ser dentro de uma mesma textbox.
XAVIER 10/08/2012 09:46:56
#407650
TECLA, o que estou tentando construir, é um interpretador de comandos, onde eu chamo um comando pelo campo text e me retorna neste mesmo campo text, o enunciado das opções a serem digitadas. E após chamar a função e eu não entrar com a opção, então o sistema fica me solicitando a opção, ao menos que eu de [Ô]esc[Ô] e cancele a opção.
é na verdade uma espécie de prompt de comando. Só para te nortear. Pense na prompt de comando do autocad. é mais ou menos parecido.
Acho que agora eu detalhei mais !!!
Então, você tem uma sugestão ou idéia de como fazer isso. Eu poste o exemplo da inputbox, porém eu não quero invocar caixa de diálogo inputbox e sim na textbox.
Um abraço.
MARCELO.TREZE 10/08/2012 10:46:38
#407663
Resposta escolhida
Ta quase lá, pelo o que eu to começando a entender é que vc quer fazer um text box auto completavel, tipo a pesquisa do google, é isso?

digo pesquisa do google, porque 95% do frequentadores do forum não conhecem como funciona o autocad
XAVIER 10/08/2012 11:02:44
#407665
MARCELO, tu conhece a prompt de comandos do autocad pelo que vejo. Então é mais ou menos isso. Em um textbox eu digito o [Ô]comando[Ô] e pressiono enter e ele me retorna as opções para serem digitadas. Tal como postei anteriormente.
Já pesquisei até como criar um interpretador de comandos em [Ô]c[Ô] e gerar uma dll e acessá-la pelo vb6. Mas se podemos simplificar por que complicar, não é mesmo? Aí eu terei de retroceder...Programar em [Ô]c[Ô] é foda amigão.

Vamos lá !!!
MARCELO.TREZE 10/08/2012 12:39:31
#407676
então Xavier, é assim uma unica função usando apenas um textbox, não é possivel fazer, o que eu indicaria era incluir um listbox, pricipalmente porque seria mais fácil exibir os comando e seleciona-los.

XAVIER 10/08/2012 13:06:57
#407684
Beleza MARCELO. Vou quebrando a cabeça aquí.
Obrigado a todos.
FILMAN 10/08/2012 14:02:02
#407696
Teste isso aqui e vê se te ajuda

Dim C As Long
Dim A, B As String

A = InputBox([Ô]Informe o 1° numero a somar : [Ô], [Ô]Soma[Ô], [Ô][Ô])
Do While (Not StrPtr(A) > 0) Or (A = [Ô][Ô] Or Not IsNumeric(A))
If MsgBox([Ô]Você não informou o primeiro valor para soma ou não foi informado um numero real[Ô] & Chr(13) & [Ô]Deseja informar?[Ô], vbYesNo + vbCritical, [Ô]ERRO[Ô]) = vbYes Then
A = InputBox([Ô]Informe o 1° numero a somar : [Ô], [Ô]Soma[Ô], [Ô][Ô])
Else
Exit Do
End If
Loop

B = InputBox([Ô]Informe o 2° numero a somar : [Ô], [Ô]Soma[Ô], [Ô][Ô])
Do While (Not StrPtr(B) > 0) Or (B = [Ô][Ô] Or Not IsNumeric(B))
If MsgBox([Ô]Você não informou o segundo valor para soma ou não foi informado um numero real[Ô] & Chr(13) & [Ô]Deseja informar?[Ô], vbYesNo + vbCritical, [Ô]ERRO[Ô]) = vbYes Then
B = InputBox([Ô]Informe o 1° numero a somar : [Ô], [Ô]Soma[Ô], [Ô][Ô])
Else
Exit Do
End If
Loop
C = (CLng(A) + CLng(B))
MsgBox C, vbInformation + vbOKOnly, [Ô]Soma[Ô]
MARCELO.TREZE 10/08/2012 14:58:42
#407704
Xavier se possivel posta uma tela do autocad, na parte de que você gostaria de fazer para o vb6

XAVIER 10/08/2012 18:19:09
#407740
Ok pessoal ! Dei uma saidinha e acabei de conectar.

Primeiramente, muito obrigado ao FILMAN pelo código enviado. Porém o código está certinho só que continuam os inputboxes lançando janelinhas na tela.
Estou enviando uma tela gráfica do cad com a linha de comando.
Não podemos desanimar... e eu sou persistente, ainda mais com uns ferões em programação me ajudando.
Tópico encerrado , respostas não são mais permitidas