1) nielle> det nytter jo ikke noget at oprette en NY (!!!) instans, når at det er en EKSISTERENDE (!!!) instans vi skal have fat i 2) hvad var det i en den gamle tråd du ikke forstod. Hvis det var hvad jeg skrev i 20/04-2005 21:09:41, så bliver det ikke nemt, for den er absolut den simpleste løsning på dit problem.
cyberfessor> Nu er det jo altså ikke mig som har anbefalet at oprette en ny instans. Jeg forholder mig blot til problemstillingen som den er formuleret her, oj her er problemet at frm aldig vlev sat til noget - deraf null-exeption. Enten skal frm initialiseres her eller også skal den tildeles en værdi udefra.
cyberfessor> Som jeg sagde, er der to muligheder for at løse problemet med null-exception. Enten at (1) initialisere frm inde fra ShowTreeView (det jeg har vist 20/04-2005 22:42:04) eller at (2) oprette en instans af FMain andetsteds og tildele frm en reference til denne instans. Af spørgsmålet fremgår det på ingen måde om der overhovedet allerede eksisterer en FMain instans på det pågældende tidspunkt, og derfor er der ikke rigtigt noget grundlag for at sige hvilken løsningsmodel som er den rigtige i den givne situation.
noobsaibot> Du bliver nok nødt til at vise os alt det kode du har. Der mangler simpelthen alt for meget information til at vi kan give dig et ordentligt svar.
det ændrer stadigvæk ikke at jeg har postet løsningen til dig i den anden tråd.
Den form du opretter skal have en reference til den form der oprettede den. Det har den ikke automatisk, så det er den funktionalitet du selv skal lave.
Der er tre ord i denne sammenhæng der skal slås fast
En type, en instans og en variabel.
En type kan være en klasse, men det er altså kun en slags opskrift til hvordan den fungerer. På samme måde som du ikke kan spise en opskrift, men bliver nødt til at lave maden først, udfra opskriften, på samme måde skal du have en instans af klassen før du kan lave noget med den. Variablen er så en slags skål dukan komme maden ned i hvis du har brug for at gemme den til senere.
Når du starter dit program bliver der oprettet en instans af en klasse som repræsenterer et vindue. Samtidig med bliver der oprettet en instans af en TreeView og gemt i en variabel, et såkaldt field, da denne variabel er synlig overalt i klassen. Men når du så opretter en instans af en anden klasse som repræsenterer et andet vindue, så har denne vindue ikke adgang til dit TreeView, eller formen hvor TreeView'et ligger i. Den ved simpelthen ikke hvor i hukommelsen den ligger, eller hvor i køkkenet du har gemt skålen med maden. Ja, din form2 kender udemærket opskriften til at lave en form1, men det nytter ikke noget når vi skal have fat i den skål mad der ER lavet. Du bliver altså nødt til fortælle form2 når du opretter den, hvor at form1 ligger henne. For når form2 ved det, så kan den gøre med den som den har lyst.
Ja, en lang smøre men håber at lidt at pædagogik kan kaste noget lys over sagen.
Og dog - så kan man bare kalde metoden med 2 parametre (FMain og Fen_anden_end_main..)
Synes godt om
Ny brugerNybegynder
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.