[VB.NET] bestaat het bestandje niet? sluiten!

Pagina: 1
Acties:

  • ArjanC
  • Registratie: Juli 2001
  • Laatst online: 26-01 17:16
hoi,

ik ben voor het eerst met VB.NET bezig en woei ! ik heb een probleempje..

code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
    Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
           
        If File.Exists("g:\logon\alert_window.txt") Then
    
            objStreamReader = New StreamReader("g:\logon\alert_window.txt")

            'Read the first line of text.
            strLine = objStreamReader.ReadLine

            'Continue to read until you reach the end of the file.
            Do While Not strLine Is Nothing

                'Write the line to the Console window.
                strshow = strshow & strLine & Environment.NewLine

                'Read the next line.
                strLine = objStreamReader.ReadLine
            Loop

            'Close the file.
            objStreamReader.Close()
            Console.ReadLine()

            RichTextBox1.Text = strshow
        Else
            Form1.ActiveForm.Close() 'DEZE WERKT NIET??
        End If

    End Sub

    Private Sub close_window_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles close_window.Click
        Form1.ActiveForm.Close()
    End Sub


waarom werkt hij niet ?, hij geeft een foutmelding (zie commentaar..)

  • whoami
  • Registratie: December 2000
  • Laatst online: 16:53
Euh , ja....
Ik zou zeggen, ga debuggen ofzo.

En waarom gebruik je trouwens steeds Form1.ActiveForm? :?


bestaad :X :X

[ Voor 54% gewijzigd door whoami op 27-05-2004 14:42 ]

https://fgheysels.github.io/


  • ArjanC
  • Registratie: Juli 2001
  • Laatst online: 26-01 17:16
nederlands is mijn goeiste vak ;)

Debug error :
An unhandled exception of type 'System.NullReferenceException' occurred in WindowsApplication3.exe

Additional information: Object reference not set to an instance of an object.

wat moet ik anders gebruiken dan Form1.activeform ?

  • NMe
  • Registratie: Februari 2004
  • Laatst online: 24-05 14:53

NMe

Quia Ego Sic Dico.

burp2001 schreef op 27 mei 2004 @ 14:37:
hoi,

ik ben voor het eerst met VB.NET bezig en woei ! ik heb een probleempje..

code:
1
..


waarom werkt hij niet ?, hij geeft een foutmelding (zie commentaar..)
Het enige commentaar dat ik zie is "DEZE DOET HET NIET". Lekker duidelijk. Wat doettie wel? En probeer anders eens Form1.Close... :X

En wat is de variabele File? Zou je die niet eerst eens aanmaken? Zomaar File.Exists gebruiken lijkt me nou niet echt te werken (nouja, ik heb meer VBS dan VB.NET kennis, maar ok).

[ Voor 20% gewijzigd door NMe op 27-05-2004 14:49 ]

'E's fighting in there!' he stuttered, grabbing the captain's arm.
'All by himself?' said the captain.
'No, with everyone!' shouted Nobby, hopping from one foot to the other.


Verwijderd

Probeer het eens met me.close(). Geef trouwens eens de exacte foutmelding.

  • ArjanC
  • Registratie: Juli 2001
  • Laatst online: 26-01 17:16
NMe84 schreef op 27 mei 2004 @ 14:47:
[...]

Het enige commentaar dat ik zie is "DEZE DOET HET NIET". Lekker duidelijk. Wat doettie wel? En probeer anders eens Form1.Close... :X

.
sorry dit is de melding :

An unhandled exception of type 'System.NullReferenceException' occurred in WindowsApplication3.exe

Additional information: Object reference not set to an instance of an object.

Verwijderd

Blijkbaar is Form1.ActiveForm() dus null (Nothing) , als je het scherm zichzelf wil laten sluiten is het nergens voor nodig om dat via ActiveForm() te doen. Ik denk dat Me.Close() je probleem zal oplossen. Met Me (this) zeg je dat je gebruik wil maken van methodes/attributen binnen het object zelf.

  • whoami
  • Registratie: December 2000
  • Laatst online: 16:53
Er is geen object Form1. Form1 is een class in dit geval denk ik.

Je zult de huidige instance moeten sluiten, maar ik denk dat je best eerst eens de basics van .NET en OOP bekijkt.

https://fgheysels.github.io/


Verwijderd

Form1 is idd een class van de base-class Form, maar ActiveForm is een static methode van de class Form (en dus van Form1) die het actieve form terug geeft (echt joh?) dus theoretisch gezien zou je daarmee de juiste instantie kunnen krijgen van het Form wat je wilt sluiten..

Alleen als je bijvoorbeeld aan het debuggen bent is er al een ander form Active en werkt je methode dus al niet meer zoals je wilt. Niet op deze manier gebruiken dus.

  • Jabbah
  • Registratie: Februari 2004
  • Laatst online: 21-05 11:01
En wat is de variabele File? Zou je die niet eerst eens aanmaken? Zomaar File.Exists gebruiken lijkt me nou niet echt te werken (nouja, ik heb meer VBS dan VB.NET kennis, maar ok).
De class File heeft alleen static methods. :)

  • CaptBiele
  • Registratie: Juni 2002
  • Laatst online: 23-05 16:11

CaptBiele

No Worries!

Jabbah schreef op 27 mei 2004 @ 16:01:
[...]

De class File heeft alleen static methods. :)
De declaratie hoeft inderdaad niet. Heb ik het al die keren voor niets gedaan :)

[ Voor 28% gewijzigd door CaptBiele op 27-05-2004 16:55 ]

Pagina: 1