Błąd "Object reference not set to an instance of an object"

0

Gdzie robię błąd?

To jest WinForms. Na formatce znajduje się jeden przycisk button_Pobierz
Projekt zawiera dwie klasy - jedna stworzona przez środowisko (Form1) i druga o nazwie 'Testowa' stworzona przeze mnie.
W klasie Form1, publicznie deklaruję testowa jako klasa Testowa, a metoda Form_Load tworzy nowy obiekt.
Po wciśnięciu przycisku, chciałbym wywołać funkcję zwracam_bool(), ale wyrzuca mi błąd

Object reference not set to an instance of an object

Czy utworzony w Form_Load obiekt nie powinien być dostępny w całej klasie? Tym bardziej, że sama linijka bool pobierz_bool=testowa.zwracam_bool(); nie generuje błędu, a po kropce podświetla się w liście dostępna funkcja zwracam bool()?

Z góry dziękuję za pomoc.

using System;
using System.Windows.Forms;

namespace WindowsFormsApp4
{
    public partial class Form1 : Form
    {
        public Testowa testowa;

        public Form1()
        {
            InitializeComponent();
        }      

        private void Form1_Load(object sender, EventArgs e)
        {
            Testowa testowa = new Testowa();
        }

        private void button_Pobierz_Click(object sender, EventArgs e)
        {
            bool pobierz_bool=testowa.zwracam_bool();

        }
    }

    public class Testowa
    {
        public bool zwracam_bool()
        { return true; }
    }
}

4

Ty nie potrzebujesz tworzyć nowej zmiennej:

private void Form1_Load(object sender, EventArgs e)
{
  Testowa testowa = new Testowa();
}

tu wystarczy tylko ja zainicjować

private void Form1_Load(object sender, EventArgs e)
{
  testowa = new Testowa();
}
0
S4t napisał(a):

Ty nie potrzebujesz tworzyć nowej zmiennej:

private void Form1_Load(object sender, EventArgs e)
{
  Testowa testowa = new Testowa();
}

tu wystarczy tylko ja zainicjować

private void Form1_Load(object sender, EventArgs e)
{
  testowa = new Testowa();
}

Działa! Bardzo dziękuję!
I chylę czoła z szacunkiem!

2
Andrzej Kmicic napisał(a):

Działa! Bardzo dziękuję!
I chylę czoła z szacunkiem!

Przed GUI zrobić SOLIDNE podstawy jezyka, programowania obiektowego
Inaczej zrobisz sobie krzywdę.

0
AnyKtokolwiek napisał(a):
Andrzej Kmicic napisał(a):

Działa! Bardzo dziękuję!
I chylę czoła z szacunkiem!

Przed GUI zrobić SOLIDNE podstawy jezyka, programowania obiektowego
Inaczej zrobisz sobie krzywdę.

No właśnie cały czas się uczę.

0
Andrzej Kmicic napisał(a):
AnyKtokolwiek napisał(a):
Andrzej Kmicic napisał(a):

Działa! Bardzo dziękuję!
I chylę czoła z szacunkiem!

Przed GUI zrobić SOLIDNE podstawy jezyka, programowania obiektowego
Inaczej zrobisz sobie krzywdę.

No właśnie cały czas się uczę.

Klikając na GUI tylko pozornie się nauczysz. Tak jak źle się nauczyć pływać, alb grać na gitarze

Wg jakiego materiału się uczysz? Niech zgadnę "filmik na YT" ?

1 użytkowników online, w tym zalogowanych: 0, gości: 1