IDEIA PARA CRIA UM "AGENTE DO PROGRAMA"
Olá!!!
Eu de novo...
Bom, a ideia é a seguinte:
criar um mensageiro interno dentro do sistema, sem se preocupar com IP, configurações e etc. e que tb sirva como agenda com alarmes, compromisso, etc.
a base eu ja desenvolvi mas faltam alguns detalhes. o escopo inicial é mais ou menos assim:
quando o sistema for iniciado, ler um form (apenas o load, sem o show) e deixa-lo invisivel. nele, terá um timer que a cada 10 segundo, faz uma checagem para:
- ver se tem alguma mensagem para aquele usuario
- ver se alguma tarefa foi agendada por aquele usuario
- ver se alguma tarefa foi agendada para aquele usuario
- e mais algumas coisas (ideias) que irão surgir no processo...
caso exista alguma ação valida a ser executada, este form fica visivel avisando ao usuario que algo deve ser feito
neste mesmo form, vc poderá inserir novas tarefas ou mandar mensagens para usuarios logados no sistema. para acionar este form "escondido" ele será acionado por alguma combinação de teclas.
todas as informações deste form, ficam gravadas num BD no servidor.
cada vez q um usuario logar no sistema, neste bd fica registrado a presença dele as dúvidas são as seguintes:
01. como fazer para que este form ao aparecer fique "always on top"? sobre os outros forms do mesmo projeto
02. como fazer para que ele fique carregado desde o inico, mas sem aparecer nem no alt-tab, nem na barra de tarefas e nem em canto nenhum
03. como fazer para q ao checar as tarefas existentes neste form, ao clicar em um determinando botao, ele volte a condição de ficar invisivel novamente.
Obrigado. mais uma vez...
Eu de novo...
Bom, a ideia é a seguinte:
criar um mensageiro interno dentro do sistema, sem se preocupar com IP, configurações e etc. e que tb sirva como agenda com alarmes, compromisso, etc.
a base eu ja desenvolvi mas faltam alguns detalhes. o escopo inicial é mais ou menos assim:
quando o sistema for iniciado, ler um form (apenas o load, sem o show) e deixa-lo invisivel. nele, terá um timer que a cada 10 segundo, faz uma checagem para:
- ver se tem alguma mensagem para aquele usuario
- ver se alguma tarefa foi agendada por aquele usuario
- ver se alguma tarefa foi agendada para aquele usuario
- e mais algumas coisas (ideias) que irão surgir no processo...
caso exista alguma ação valida a ser executada, este form fica visivel avisando ao usuario que algo deve ser feito
neste mesmo form, vc poderá inserir novas tarefas ou mandar mensagens para usuarios logados no sistema. para acionar este form "escondido" ele será acionado por alguma combinação de teclas.
todas as informações deste form, ficam gravadas num BD no servidor.
cada vez q um usuario logar no sistema, neste bd fica registrado a presença dele as dúvidas são as seguintes:
01. como fazer para que este form ao aparecer fique "always on top"? sobre os outros forms do mesmo projeto
02. como fazer para que ele fique carregado desde o inico, mas sem aparecer nem no alt-tab, nem na barra de tarefas e nem em canto nenhum
03. como fazer para q ao checar as tarefas existentes neste form, ao clicar em um determinando botao, ele volte a condição de ficar invisivel novamente.
Obrigado. mais uma vez...
Resposta -
01- Tem um componente chamado ACTIVE FORM, que serve para deixar o form, por cima dos outros e até por cima das janelas e programas do Windows... me serviu bem para a criação de um mensageiro como o seu...
02 - Para ser carregado desde o inicio vc pode usar o WIN.INI, a pasta INICIAR, ou até pelo registro do PRÓ“PRIO Windows.... quanto ao alt-tab, você pode usar um componente para a janela fica no SYSTEM TRAY, tudo fica mais prático...
03- Não entendi o que quiz dizer....
Como já disse, já fiz um sistema como este........
Qualquer coisa estou aqui
01- Tem um componente chamado ACTIVE FORM, que serve para deixar o form, por cima dos outros e até por cima das janelas e programas do Windows... me serviu bem para a criação de um mensageiro como o seu...
02 - Para ser carregado desde o inicio vc pode usar o WIN.INI, a pasta INICIAR, ou até pelo registro do PRÓ“PRIO Windows.... quanto ao alt-tab, você pode usar um componente para a janela fica no SYSTEM TRAY, tudo fica mais prático...
03- Não entendi o que quiz dizer....
Como já disse, já fiz um sistema como este........
Qualquer coisa estou aqui
Pelo próprio q vc colocou... sugiro que use um dos CHARACTERS do MSAGENT, que são assistentes iguais aos do OFICCE, a aplicação vai ficar mais interativa, fiz isso na minha (sistema de mensagens) e foi um sucesso!!!
Citação:01. como fazer para que este form ao aparecer fique "always on top"? sobre os outros forms do mesmo projeto
Tenho esse code:
Option Explicit
Private Declare Function SetWindowPos Lib "user32" (ByVal hWnd As Long, ByVal hWndInsertAfter As Long, ByVal X As Long, ByVal Y As Long, ByVal cx As Long, ByVal cy As Long, ByVal wFlags As Long) As Long
Const MF_BYPOSITION = &H400&
Const SWP_FLAGS = 3
Const SWP_HWND_TOPMOST = -1
Const SWP_HWND_NOTOPMOST = -2
Private Sub SempreVisivel(Form As Object, SetAsTopMost As Boolean)
Dim Flag As Long
If SetAsTopMost Then
Flag = SWP_HWND_TOPMOST
Else
Flag = SWP_HWND_NOTOPMOST
End If
SetWindowPos Form.hWnd, Flag, Form.Left / Screen.TwipsPerPixelX, Form.Top / Screen.TwipsPerPixelY, Form.Width / Screen.TwipsPerPixelX, Form.Height / Screen.TwipsPerPixelY, SWP_FLAGS
End Sub
Private Sub Form_Load()
SempreVisivel Me, True
End SubCitação:02. como fazer para que ele fique carregado desde o inico, mas sem aparecer nem no alt-tab, nem na barra de tarefas e nem em canto nenhum
Links:
http://www.vbmania.com.br/vbmdetail.php?varID=968
http://www.vbmania.com.br/vbmdetail.php?varID=113
Para esconder o aplicativo do Alt+Tab faça o seguinte:
App.TaskVisible = False
Na hora da tarefa, exiba o formulário:
Me.Show
Quando quiser esconder o formulário novamente
Me.Hide
App.TaskVisible = False
Na hora da tarefa, exiba o formulário:
Me.Show
Quando quiser esconder o formulário novamente
Me.Hide
Tópico encerrado , respostas não são mais permitidas