• Revista PROGRAMAR: Já está disponível a edição #53 da revista programar. Faz já o download aqui!

estagiarioIT

[x] campainha escolar em VB

18 mensagens neste tópico

Boas,

gostaria de saber se podem ajudar me com este meu 'problema' =)

tenho de fazer um programa em VB que funcione como uma campainha de uma escola, para aulas de 90 minutos, tem de tocar a entrada, ao fim dos primeiros 45 minutos, ao fim dos 90 e depois tem de tocar quando acabar o intervalo(sendo este de tempos diferentes claro) queria saber se alguem me pode dizer qual a melhor forma d começar e de desenvolver este projecto.

cumps ^^

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Colocas o relógio, e depois programas eventos temporizados, mas agora fazer a campainha tocar é que não sei que instrução terás de enviar !  :hmm:

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

depende... tem mesmo de ser um barulho de uma campainha? se for sacas um da net, metes-o como resource e fazes para aquilo com o windows media player no programa tocar o ficheiro, ou então faz com um "beep" :(

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Não me parece que ele queira reproduzir o som de uma campainha, mas sim fazer a da escola tocar mesmo !

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

ah... mas ele disse:

tenho de fazer um programa em VB que funcione como uma campainha de uma escola, para aulas de 90 minutos, tem de tocar a entrada, ao fim dos primeiros 45 minutos, ao fim dos 90 e depois tem de tocar quando acabar o intervalo(sendo este de tempos diferentes claro) queria saber se alguem me pode dizer qual a melhor forma d começar e de desenvolver este projecto.

como uma campainha de uma escola, e não com a campainha de uma escola :hmm:

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

looooool desculpem mas fazer a campainha da escola essa esta boa :P

se fosse assim faria tocar 20 min antes das aulas acabar ;) loool

o melhor e fazeres isso cm um timer. tanto em vb6 e vb.net funciona verificas o tempo de 1 em 1 segundo e quando o tempo for igual ao tempo que deve tocar reproduzes um som ou fazes o que quizeres =)

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Podes usar o porto serie para activar/desactivar 1 rele que fazem tocar a campainha da escola.

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Acho que ainda podias optimizar melhor isso...

Mas já dá pra se ter uma ideia...  :P

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Acho que ainda podias optimizar melhor isso...

Mas já dá pra se ter uma ideia...  :cheesygrin:

Optimizar como?

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Por exemplo o formato das horas, podias por combo box's com horas, minutos, segundos... porque se bem me lembro também aceita outros caracteres sem ser numeros... :confused:

Outra coisa é o tempo de toque... se fosse temporizado para tocar durante 3 a 5 segundos e depois parar não se perdia nada, já que para parares de ouvir a campainha tens que fechar o programa...  :cheesygrin:

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Por exemplo o formato das horas, podias por combo box's com horas, minutos, segundos... porque se bem me lembro também aceita outros caracteres sem ser numeros... :)

Outra coisa é o tempo de toque... se fosse temporizado para tocar durante 3 a 5 segundos e depois parar não se perdia nada, já que para parares de ouvir a campainha tens que fechar o programa...  :cheesygrin:

Não aceita carácteres não :D quer dizer, até aceita, mas tipo se carregares para definir com caracteres que não sejam números aparece-te uma MsgBox a dizer que não dá :confused:

E quando a teres de fechar o programa, também não é bem assim :P o som da campainha tem 39segundos xD

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Desculpa, mas eu escrevi qualquer coisa como "asdasdas" e ele aceitou como se fosse hora... cliquei em activar campainha... e o botão mudava para desactivar campainha... Mas se tu o dizes, quem sou eu para contradizer quem sabe o que fez... se assim é ainda bem... :cheesygrin:

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Desculpa, mas eu escrevi qualquer coisa como "asdasdas" e ele aceitou como se fosse hora... cliquei em activar campainha... e o botão mudava para desactivar campainha... Mas se tu o dizes, quem sou eu para contradizer quem sabe o que fez... se assim é ainda bem... :cheesygrin:

A sério?  :dontgetit:

Quase que juro que tinha posto uma cena para só aceitar números  :-[ se calhar não pus xD eu logo mudo isso também... Desculpa aí  :thumbsup:

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

melhorava duas coisas neste programa...

1º - Cria um botão para minimizares o programa para a bandeja (a beira das horas), pois se quiseres que ele toque passado 1 ou 2 horas, vais ter de tar com ele pelo menos minimizado e é mais util na bandeja...

como?

ve isto:

http://www.portugal-a-programar.pt/index.php?showtopic=8982

2º - Não deixavas o utilizador inserir mais nada a não ser os numeros de 0 a 9 e os ":" para separar e não deixavas tambem por mais de 5 caracteres pois so da para 2 numeros horas e 2 para os minutos e os ":" ...

como:

o maximo de 5 caracteres e so seleccionares a textbox e ires a Maxlenght e pores 5...

para apenas deixar por numeros e os 2 pontos fazes isto:

num modulo pões:

Function SóNúmeros(Key As Integer) As String
    'selecione os caracteres que desejar
    Const Números$ = ":0123456789"
    SóNúmeros = Key
    If Key <> 8 Then    'conferindo se é backspace
        'vê se é um caracter permitido
        If InStr(Números$, Chr(Key)) = 0 Then
            SóNúmeros = 0
        End If
    End If
End Function

e no keypress da textbox pões:

KeyAscii = SóNúmeros(KeyAscii)

espero ter sido util... lool

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

melhorava duas coisas neste programa...

1º - Cria um botão para minimizares o programa para a bandeja (a beira das horas), pois se quiseres que ele toque passado 1 ou 2 horas, vais ter de tar com ele pelo menos minimizado e é mais util na bandeja...

como?

ve isto:

http://www.portugal-a-programar.pt/index.php?showtopic=8982

2º - Não deixavas o utilizador inserir mais nada a não ser os numeros de 0 a 9 e os ":" para separar e não deixavas tambem por mais de 5 caracteres pois so da para 2 numeros horas e 2 para os minutos e os ":" ...

como:

o maximo de 5 caracteres e so seleccionares a textbox e ires a Maxlenght e pores 5...

para apenas deixar por numeros e os 2 pontos fazes isto:

num modulo pões:

Function SóNúmeros(Key As Integer) As String
    'selecione os caracteres que desejar
    Const Números$ = ":0123456789"
    SóNúmeros = Key
    If Key <> 8 Then    'conferindo se é backspace
        'vê se é um caracter permitido
        If InStr(Números$, Chr(Key)) = 0 Then
            SóNúmeros = 0
        End If
    End If
End Function

e no keypress da textbox pões:

KeyAscii = SóNúmeros(KeyAscii)

espero ter sido util... lool

Até foste, o problema é que já não tenho o projecto :(

Já formatei o pc umas 5 vezes depois disso ^^ :P

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Crie uma conta ou ligue-se para comentar

Só membros podem comentar

Criar nova conta

Registe para ter uma conta na nossa comunidade. É fácil!


Registar nova conta

Entra

Já tem conta? Inicie sessão aqui.


Entrar Agora