Ir para conteúdo
Fórum Script Brasil
  • 0

Fórmulas e Timer [AJUDA URGENTE]


abjuca

Pergunta

Oi pessoal sou novo no fórum, desculpe se eu tiver quebrando alguma regra

Eu preciso de ajuda URGENTE, estou fazendo um programa com VISUAL BASIC 6,

tenho uma semana para entregar, e "travei" em duas partes

1º PARTE

Tenho tres textbox no form (campos de texto) txt1, txt2 e txt3,

sendo que os tres são alimentados por numeros atraves de botoes igual a uma calculadora

preciso de uma situação onde o calculo seja feito automatico

EXEMPLO:

txt1 = txt2 * txt3

txt2 = txt1 / txt3

txt3 = txt1 / txt2

se eu prencher o txt1 com um valor e o txt2 com outro valor,

o valor do txt3 teria que ser alterado automaticamente sem click ou movimentar o mouse (igual é feito nas células do Excel)

2º PARTE

tenho dois botoes no form (Command) cmd1 e cmd2,

quando o form inicia o cmd2 está desabilitado,

quando eu pressionar o cmd1 deve aparecer uma contagem regressiva de 5s ,se possível no próprio cmd1,

e essa parte eu não sei se é possível, durante essa contagem regressiva aparecer no form um gif animado que eu fiz,

e fazer um barulho (carregar um mp3 que eu tenho no PC)

e após essa contagem desabilitar o cmd1 e habilitar o cmd2

quando apertar cmd2 fazer um barulho como se tocasse uma campainha

é mais ou menos isso que eu preciso

por favor me digam se é possivel, se não o que da para fazer e o que não dá,

preciso disso URGENTE mesmo que eu tenha que mudar a versão do VB

e desculpa denovo seu eu quebrei alguma regra do fórum !

vlw

Link para o comentário
Compartilhar em outros sites

4 respostass a esta questão

Posts Recomendados

  • 0

Lendo aqui, tudo q você falou é possivel sim... porem não entendi essas contas...

Vamos la...

Parte 1

Supondo se que eu prencha o numero 8 no txt1... o q apareceria no campo 2 e 3 seria isso?

txt1 = txt2 * txt3 ... 8 = 4 * 2

txt2 = txt1 / txt3 ... 4 = 8 / 2

txt3 = txt1 / txt2 ... 2 = 8 / 4

Se for isso... você pode criar uma function, exemplo:

Public function calculo
dim a,b,c as single
a=val(txt1.text)
b=val(txt2.text)
c=val(txt3.text)
txt1.text=b*c
txt2.text=a/c
txt3.text=a/b
Ou se não quiser usar variáveis
Public function calculo
txt1.text=val(txt2.text)*val(txt3.text)
txt2.text=val(txt1.text)/val(txt3.text)
txt3.text=val(txt1.text)/val(txt2.text)
E nos campos de texto, pela propriedade "change" você chama a função calculo
call calculo
Parte2 Você pode criar um timer desabilitado com interval 1000 (1 segundo) Quando o usuário clicar:
cmd1.caption="5"
timer1.enabled=true
E no timer, você faz
do while cmd.caption>0
cmb1.caption = cmb1.caption - 1
loop
if cmb1.caption=0 then timer1.enabled=false

Quanto ao executar o som, eu só sei fazer usando um componente do windows media player, mas acho q tem um jeito menos complicado... vou dar uma pesquisada e te falo...

Qualque duvida só posta aqui cara, se não entendeu algo que eu falei só postar aqui

Abraços e bem vindo ao forum :)

Editado por Matheus-vb6
Link para o comentário
Compartilhar em outros sites

  • 0

Então, fiz um esquema de som... vai em project>components>insertable objects e procura por windows media player....

No seu form load poe

wmp.enabled=false
wmp.URL = "C:\Users\Anderson\Desktop\teste.mp3"

E quando o usuario clicar, você habilita esse componente...

Não se esqueça de colocar visible=false :)

Editado por Matheus-vb6
Link para o comentário
Compartilhar em outros sites

  • 0
Lendo aqui, tudo q você falou é possivel sim... porem não entendi essas contas...

Vamos la...

Parte 1

Supondo se que eu prencha o numero 8 no txt1... o q apareceria no campo 2 e 3 seria isso?

txt1 = txt2 * txt3 ... 8 = 4 * 2

txt2 = txt1 / txt3 ... 4 = 8 / 2

txt3 = txt1 / txt2 ... 2 = 8 / 4

Se for isso... você pode criar uma function, exemplo:

Public function calculo
dim a,b,c as single
a=val(txt1.text)
b=val(txt2.text)
c=val(txt3.text)
txt1.text=b*c
txt2.text=a/c
txt3.text=a/b
Ou se não quiser usar variáveis
Public function calculo
txt1.text=val(txt2.text)*val(txt3.text)
txt2.text=val(txt1.text)/val(txt3.text)
txt3.text=val(txt1.text)/val(txt2.text)
E nos campos de texto, pela propriedade "change" você chama a função calculo
call calculo
Parte2 Você pode criar um timer desabilitado com interval 1000 (1 segundo) Quando o usuário clicar:
cmd1.caption="5"
timer1.enabled=true
E no timer, você faz
do while cmd.caption>0
cmb1.caption = cmb1.caption - 1
loop
if cmb1.caption=0 then timer1.enabled=false

Quanto ao executar o som, eu só sei fazer usando um componente do windows media player, mas acho q tem um jeito menos complicado... vou dar uma pesquisada e te falo...

Qualque duvida só posta aqui cara, se não entendeu algo que eu falei só postar aqui

Abraços e bem vindo ao forum :)

vlw cara ajudou pra caramba, mas

teve duas partes que faltaram, culpa minha porque axo que não expliquei direito,

1º parte

os txt1 e txt2 fizeram os calculo mas não lançaram no txt3

só aparece no txt3 quando eu clico ou mudo ele

e teria que aparecer autmatico sem eu ter que clicar ou mexer o mouse nem nada

assim que eu mudar os valore do txt1 e txt2 o txt3 ser alimentado pelo novo resultado automaticamente

2º parte

aparece o numero 5 no caption do cmd1

mas logo em seguida aparece o zero, não faz toda contagem regressiva

não entendi porque sendo q fiz o algoritmo passo a passo e ele faz todo calculo

mas não lança no caption do cmd1

mas de resto de tudo certinho

vlw cara pela ajuda, e por dispor do seu tempo

vlw mesmo

Link para o comentário
Compartilhar em outros sites

  • 0
os txt1 e txt2 fizeram os calculo mas não lançaram no txt3

só aparece no txt3 quando eu clico ou mudo ele

verifique se voce fez a função e chamou ela pela propriedade change de cada text....

Private Sub Text1_Change()
call calculo
End Sub
Private Sub Text2_Change()
call calculo
End Sub
Private Sub Text3_Change()
call calculo
End Sub

private sub calculo
dim a,b,c as single
a=val(txt1.text)
b=val(txt2.text)
c=val(txt3.text)
txt1.text=b*c
txt2.text=a/c
txt3.text=a/b
end sub
Corrigindo uma coisa... eu fiz public function... mas ta errado... é "private sub calculo", desculpa... costume de módulo kkk 2 parte eu fiz aqui... vou postar o código...
Private Sub Command1_Click()
Command1.Caption = "5"
Timer1.Enabled = True
End Sub
Private Sub Timer1_Timer()
x = Command1.Caption
x = x - 1
Command1.Caption = x
If Command1.Caption = "0" Then Timer1.Enabled = False
End Sub

Lembrando que o timer tem que estar com interval 1000(1segundo) e enabled=false

Qualquer duvida só postar ai cara.... se puder poste o código dos seus txt para mim ver....

Abraços

Editado por Matheus-vb6
Link para o comentário
Compartilhar em outros sites

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.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,2k
    • Posts
      652k
×
×
  • Criar Novo...