Gå til innhold

[VB 2008] Popup/toast informasjon - noe msn lignende problem.


Gjest

Anbefalte innlegg

Hei!

 

Har slik popup/toast som msn har når folk logger på eller sender melding.

Problemet er at når jeg gjør en handlig 2-3 ganger etterhverandre kommer det slik det etterhverandre oppover skjermen.

post-97221-1259934927_thumb.png

 

Koden jeg bruker da:

	   If (Not Label1.Text = "Stopped" And Not spotify.Nowplaying = "" And spotify.ProcessesRunning("spotify") = 1) Then
		Dim MittArray() As String = Split(spotify.Nowplaying, "–")
		Dim slice As New ToastForm(2000, MittArray(0) & vbNewLine & MittArray(1))
		slice.Show()
	Else
		Dim slice As New ToastForm(2000, "Stopped")
		slice.Show()
	End If

Noen måte jeg kunne hatt slik at det bare er EN slik form i hjørne nederst som bare jeg endre label på? Slik som Toastify har?

Toastify: toastify.jpg

Lenke til kommentar
Videoannonse
Annonse

Det er faktisk vanlig at slike toasts "stacker" seg oppå hverandre når det kommer flere. MSN gjør det på samme måten.

Det du evt kan gjøre er å gå via en kø, slik at istedet for at meldingen går direkte til funksjonen som dytter den til skjermen, så går den via køen. Funksjonen som skriver til skjermen sjekker da køen, viser en melding, venter, fjerner meldingen, sjekker køen.

Evt kan du istedet for å fjerne og poppe ut på nytt bare fade over i den andre beskjeden...

 

-C-

Lenke til kommentar

Din kode:

 

If (Not Label1.Text = "Stopped" And Not spotify.Nowplaying = "" And spotify.ProcessesRunning("spotify") = 1) Then

Dim MittArray() As String = Split(spotify.Nowplaying, "–")

Dim slice As New ToastForm(2000, MittArray(0) & vbNewLine & MittArray(1))

slice.Show()

Else

Dim slice As New ToastForm(2000, "Stopped")

slice.Show()

End If

 

 

 

En prosedyre som muligens vil virke.

 

 

Private slice As Toastform

Sub ShowToast(ByVal txt As String)

If slice IsNot Nothing Then

If slice.Visible Then slice.Close()

slice = nothing

End If

slice = New ToastForm(2000, txt)

slice.Show()

End Sub

 

 

Når du skal bruke toast vinduet. Caller du bare ShowToast med parameter tekst.

 

Prøv å erstatt din kode med følgende:

 

 

Dim ToastText As String = _

IIf((Not Label1.Text = "Stopped" And Not spotify.Nowplaying = "" And spotify.ProcessesRunning("spotify") = 1), Split(spotify.Nowplaying, "–")(0) & vbNewLine & Split(spotify.Nowplaying, "–")(1), "Stopped")

ShowToast(ToastTxt)

 

 

Lenke til kommentar
  • 1 måned senere...

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
×
×
  • Opprett ny...