[VB] vanuit tray msgbox met focus

Pagina: 1
Acties:

  • chaozz
  • Registratie: Juni 2000
  • Laatst online: 23-08 22:57
ik ben bezig met een applicatie ([rml][ zelfgemaakt] WebChange Detector beta 0.01[/rml])

deze kan geminimaliseerd worden naar de system tray. als mijn programma echter een verandering ontdenkt op een internetpagina wil ik dat er een msgbox in beeld komt. nu doe ik het zo, en dat werkt gedeeltelijk:

code:
1
2
3
4
5
Dim ReturnValue
Me.Show
WindowState = vbNormal
ReturnValue = MsgBox(txtURL(URLnumber) & " has changed. Visit it now?", vbYesNo, "Page Change Detected!")
If ReturnValue = vbYes Then lRet = ShellExecute(hwnd, "open", txtURL(URLnumber), vbNull, vbNull, 1)


nu komt de msgbox wel op de taakbalk te staan, maar hij valt geheel niet op. kan ik hem laten knipperen, of misschien op de voorgrond laten verschijnen? let wel, het moet een vbYesNo msgbox zijn..

[ Voor 7% gewijzigd door chaozz op 22-01-2003 14:55 ]

chaozz.nl | RetroGameCouch


  • chaozz
  • Registratie: Juni 2000
  • Laatst online: 23-08 22:57
err.. niemand?

chaozz.nl | RetroGameCouch


  • Sponge
  • Registratie: Januari 2002
  • Laatst online: 15-08 11:47

Sponge

Serious Game Developer

Tsja, je kunt hem eventueel met Windows API van plaats laten te veranderen?

Knipperen wordt wat lastiger, je hebt geen handle (hwnd) van de messagebox, en die verkrijen voor een emssagebox is denk ik een beetje overkill. Eventueel kun je ook zelf je eigen mooie messageboxmaken (veel voorbeelden op www.pscode.com).

Trouwens, als de gebruiker de messagebox niet ziet, en dus niet yes/no klikt ben ik bang dat het programma niet verder meer op input reageert (via systray bijv)

  • chaozz
  • Registratie: Juni 2000
  • Laatst online: 23-08 22:57
quote: hij_zei
Trouwens, als de gebruiker de messagebox niet ziet, en dus niet yes/no klikt ben ik bang dat het programma niet verder meer op input reageert (via systray bijv)
tjah.. ook weer waar. geen msgbox, maar een klein formpje is dus beter. maar dan blijft de vraag. of werkt het dan wel?

chaozz.nl | RetroGameCouch


  • Sponge
  • Registratie: Januari 2002
  • Laatst online: 15-08 11:47

Sponge

Serious Game Developer

Een form kun je:

Centreren dmv de property "Startup position" -> vbCenterScreen, of dmv. Left/Top de positie zelf neerzetten


Laten Knipperen/flashen

en ook "Always on top" laten staan

Waarmee volgens mij je problemen opgelost zijn? :)

Verwijderd

Inderdaad een functie aanroep naar de kernell32.dll doen. Een scherm laten flashen is heel makkelijk. Koop eens een WINAPI tutorial. Goed boek en duidelijk is te vinden op www.wrox.com

Verwijderd

msgbox "Voorgrond test.", vbokonly +vbSystemModal ,"Voorgrond"

  • chaozz
  • Registratie: Juni 2000
  • Laatst online: 23-08 22:57
Verwijderd schreef op 23 January 2003 @ 18:10:
msgbox "Voorgrond test.", vbokonly +vbSystemModal ,"Voorgrond"
hiermee wacht het hele systeem toch en gaat pas verder als je ok klikt? wel erg drastisch, maar vindt het een leuke oplossing. ga het meteen testen!!!!!

chaozz.nl | RetroGameCouch


  • chaozz
  • Registratie: Juni 2000
  • Laatst online: 23-08 22:57
werkt perfect. bedankt!!!

chaozz.nl | RetroGameCouch

Pagina: 1