Vamos criar um programa no Visual Basic e transformá-lo em um Screen Saver. Pode parecer
complexo, mas não é.
Primeiro vamos criar um programa que vá enchendo a tela de pontos (o código foi tirado de
um exemplo do próprio Visual Basic), e , a seguir fazê-lo funcionar como um Screen Saver.
Para isto basta atentarmos para os seguintes detalhes:
1-Ao criar o programa o form dever ocupar toda a janela e não ter título, nem os botões
para maximizar ou minimizar devem estar habilitados.
Valores das propriedades do Form1
------------------------------------------
Propriedade Valor
------------------------------------------
Caption ""
ControlBox False
BackColor &H00000000& (preto)
MaxButton False
MinButton False
WindowState 2
--------------------------------------------
2-Insira o controle Timer no formulário (fig 1.0) e defina as propriedades
![]() fig 1.0 |
Valores das prop. de Timer1
-------------------------------
Propriedade Valor
-------------------------------
Name Timer1
Enabled True
Interval 60
--------------------------------
|
Private Sub Timer1_Timer()
Dim CX, CY, Msg, XPos, YPos
' Declara as variaveis
ScaleMode = 3
' Define ScaleMode como
' pixels.
DrawWidth = 5
' Define DrawWidth.
ForeColor = QBColor(4)
' Define o background para
vermelho
FontSize = 24
' define o tamanho do ponto
CX = ScaleWidth / 2 '
Obtem o centro horizontal
CY = ScaleHeight / 2
' Obtem o centro vertical.
Cls ' Limpa o formulario
Msg = "Bom Dia!"
CurrentX = CX - TextWidth(Msg) / 2
' posicao Horizontal
CurrentY = CY - TextHeight(Msg)
' posicao Vertical
Print Msg
' imprime mensagem.
Do
Counter = Counter + 1
XPos = Rnd * ScaleWidth
YPos = Rnd * ScaleHeight
PSet (XPos, YPos), QBColor(Rnd * 15)
' desenha o efeito.
DoEvents
If Counter > 2000 Then
'contador para limpar a tela
Counter = 0
Form1.Cls
End If
Loop
' processando
End Sub
4-Como o Screen Saver pode ser ativado mais de uma vez , insira o código a seguir no evento Load do formulário para evitar mais de uma instância de seu aplicativo na memória.
Private Sub Form_Load()
If App.PrevInstance Then
End
End If
End Sub
5-Para encerrar o programa utilize os eventos MouseMove , MouseDown e KeyDown, pois quando o usuário pressionar algo ou movimentar o mouse o Screen Saver deve ser encerrado. Insira os códigos como descrito abaixo :
Private Sub Form_MouseDown(Button As Integer,Shift As Integer,X As Single,Y As Single)
End
End Sub
Private Sub Form_MouseUp(Button As Integer,Shift As Integer,X As Single,Y As Single)
End
End Sub
Private Sub Form_KeyPress(KeyAscii As Integer)
End
End Sub
6-Como o evento MouseMove é ativado quando o form for lido pela primeira vez, insira o código abaixo no evento MouseMouse para não fechar o programa na sua ativação.
Private Sub Form_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single)
Static conta As Integer
If conta > 3 Then
End
Else
conta = conta + 1
End If
End Sub
7-Agora ative a opção File->Make EXE File... e informe o nome do seu Screen Saver.
8-Troque a extensão EXE do arquivo gerado para SCR, e copie o arquivo para o diretório \WINDOWS\SYSTEM
9-Agora configure a proteção de tela no seu Windows 95 selecionando o nome do seu programa como o protetor de tela.
10-Se quiser pode incrementar ainda mais este exemplo, mas atenção , eu não testei
este exemplo no Windows 3.X, só no Windows 95.
Tchau!