Új hozzászólás Aktív témák
-
Hunpriest
senior tag
-
Zalanius
tag
válasz
daninet
#8204
üzenetére
Azon túl, hogy megszívlelendő, amit #8205 Jok3r! már leírt nagy vonalakban, a kódban levő minden mostani fordítási hiba (tehát az egyéb elnevezésektől és felesleges részektől tekintsünk most el!) lényegében egyetlen rossz értelmezésből ered. Rendben volna a két új form, amit adatbevitel céljából létrehoztál, de a ShowDialog() hívásokból is látszik, hogy ezeknél olyasmi a szándék, hogy az ablak megjelenik, az inputoknak értéket adunk, aztán eltűnik -> és itt a szerepe véget ért. Ha utána kell a beírt adat tartósan, akkor nem a formokat kell List<>-be gyűjteni, hanem a Jarmu és Allat osztályok példányait.
Tehát röviden: ahol List<> deklarációid vannak, oda nem az UjJarmu és UjAllat, hanem a Jarmuvek és Allatok írandó. Több helyen is:
List<Allatok> aLista = new List<Allatok>();
List<Jarmuvek> jLista = new List<Jarmuvek>();Egyből sikeres a build, ha ezeket a módosításokat megléped. Nem mondom, hogy minden összevág, de először ezt kell tisztába tenni, hogy a formok között legyen adatcsere.
-
j0k3r!
őstag
válasz
daninet
#8204
üzenetére
Csak a képet néztem meg, de millió helyen bele lehetne kötni, viszont ahelyett, hogy felsorolnám a hibákat, ahelyett inkább azt tanácsolom, hogy amíg egy ilyen hibaüzenettel nem tudsz egyedül megbírkózni, addig hagyd a Windows Forms-ot és inkább kezd el az objektum orientált programozás alapjait nézegetni szigorúan konzol alkalmazásokon keresztül. Úgy látom az OOP alapokkal még nem vagy tisztában, szóval a Windows Forms egyelőre teljesen fölösleges komplexitást ad most neked. Tényleg nem kötekedésből mondom, hanem tapasztalatból, hogy a stabil alapok nagyon fontosak

-
válasz
daninet
#8200
üzenetére
Tudom, a hiba azért jön létre, mert a felugró ablaknak nem adod át a könyvek listájának referenciáját, így az inicializálatlan marad.
Így helyes:
private void újKönyvToolStripMenuItem_Click(object sender, EventArgs e)
{
UjKonyv uj = new UjKonyv(kLista);
uj.ShowDialog();
listaÍr();
}private void újIdegenKönyvToolStripMenuItem_Click(object sender, EventArgs e)
{
UjIdegenKonyv uik = new UjIdegenKonyv(kLista);
uik.ShowDialog();
listaÍr();
}A default-kontruktorokat ki is kellene törölnöd, hogy ne zavarjanak...
-
válasz
daninet
#8198
üzenetére
Látatlanban nincs átadva egyik form referenciája a másiknak, ezért dob hibát.Nincs VS a gépemen, melyik sorban dobja a hibát?Látom már:
private void újKönyvToolStripMenuItem_Click(object sender, EventArgs e)
{
UjKonyv uj = new UjKonyv();
uj.ShowDialog();
listaÍr();
}private void újIdegenKönyvToolStripMenuItem_Click(object sender, EventArgs e)
{
UjIdegenKonyv uik = new UjIdegenKonyv();
uik.ShowDialog();
listaÍr();
}Az aláhúzott részekben nem a default kontruktort kellene használni, hanem aminek átadod a könyvlistát.
BTW a magyar nyelvű függvény és változónevektől megfájdult a fejem...
BTW2 miért nem működik a kód stílusban a formázás???
Új hozzászólás Aktív témák
● ha kódot szúrsz be, használd a PROGRAMKÓD formázási funkciót!
- Samsung Galaxy Watch (Tizen és Wear OS) ingyenes számlapok, kupon kódok
- Víz- gáz- és fűtésszerelés
- Azonnali VGA-s kérdések órája
- Formula-1
- Path of Exile (ARPG)
- Honor Magic6 Pro - kör közepén számok
- Kormányok / autós szimulátorok topikja
- Kerékpárosok, bringások ide!
- NVIDIA GeForce RTX 5080 / 5090 (GB203 / 202)
- Ilyen olcsó sem volt még egy Apple notebook
- További aktív témák...
- iPhone 14 Pro 128GB gyári független új akku!
- ADATA Legend 710 512GB PCIe Gen3 X4 M2 NVMe / Beszámítás OK!
- Kioxia XG8 4TB M.2 NVME PCI-E 4.0 x4 - 7000-5800 MBs - Eladó
- Lenovo ThinkPad T15 Gen 2 i5-1135G7 16GB Ram 256 GB SSD FHD IPS Garancia
- Lenovo ThinkPad P15 Gen 2 i7-11850H 32 GB RAM 512 GB SSD NVIDIA T1200 Garancia
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest

BGF-en még mindig az a példa?

