Avatar billede listende-elg Nybegynder
04. april 2003 - 13:37 Der er 2 kommentarer og
1 løsning

NotifyIcon

Jeg er så småt begyndt at konvertere til VB.NET, og det går for det meste også meget godt. Desværre er der nogle enkelte problemer hist og pist, jeg ikke helt forstår.
F.eks. har jeg brug for at tilføje et TrayIcon (NotifyIcon) på en af mine forms, og derved benytte dette til at vise/skjule min form.
På normal vis ville jeg have gjort nogenlunde såles:
(skrevet fra hukommelsen)
Private Sub NotifyIcon_Click()
    Form1.visible = not form1.visible
End sub

Hvorefter formens .visible property gerne skulle skifte hver gang man klikkede på ikonet.
Forsøger jeg det samme i VB.NET får jeg følgende fejlmeddelelse:

"Object reference not set to an instance of an object."

Jeg går udfra at ovenstående betyder at jeg kun kan udføre funktionen på en instans af objektet (formen), men det kan da ikke passe?? Det har da aldrig været noget problem i VB6.

Det ville være fedt hvis der var en der kunne hjælpe.
Avatar billede kedde65 Praktikant
07. april 2003 - 16:00 #1
Du skal bruge følgende kode istedet.

Private Sub NotifyIcon_Click()
    me.visible = not me.visible
End sub

VH CK
Avatar billede listende-elg Nybegynder
07. april 2003 - 22:03 #2
Tak for svaret, det virker fint.
Jeg kan så bare ikke helt forstå hvorfor det forholder sig således.
Avatar billede kedde65 Praktikant
07. april 2003 - 22:11 #3
Det er fordi form1 ikke er en instans ligesom det er i VB 6.0. Form1 er faktisk kun en objekt variabel. Men derimod er ordet Me blevet et Object der hele tiden refererer til den formular(container) du arbejder på.

Du kan dog sagtens bruge en anden variabel. Eksempelvis ved at bruge følgende sætning

Dim frm as new form1
frm = me

frm.visible = not frm.visible

Håber det hjalp, ellers send en mail til ck@targetgruppen.dk så skal jeg se om jeg kan forklare det yderligere :-)

VH CK
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester