Hirdetés

Új hozzászólás Aktív témák

  • eziskamu
    addikt

    Sziasztok!

    Nem vagyok egy nagy java májer, úgyhogy bocs ha nagy hülyeséget kérdezek :)
    Szóval írok egy progit, aminek van GUI-ja. A panelokhoz a netbeans beépített JPanel Form készítőjét használtam
    Leírom kb a program vázát:

    main{
    ProgramUI ablak = new ProgramUI();
    }

    public class ProgramUI extends JFrame {
    pnJobb = new JobbPanel();
    pnAlso = new AlsoPanel();

    this.add(pnJobb, BorderLayout.EAST);
    this.add(pnAlso, BorderLayout.SOUTH);
    validate();
    }
    }

    na én nekem mondjuk van a pnJobb panelen egy gombom, legyen start. ha rányomok a startra, szeretném meghívni az ablak start() fv-ét. ezt csk úgy tudtam elérni, ha statikusnak deklarálom a ProgramUI start fv-ét, és az osztályfv-t hívom meg. ez így nme az igazi, bár igazából járható út lenne azt hiszem, mert úgyis csak egy példánya van az osztálynak.
    az még jobb lenne, ha nem a pnJobb kezelné az inputot (vagyis ne ott legyen az actionlistener), hanem esetleg az ProgramUI osztály. ez megoldható valahogy? :)

    de általánosságban is érdekelne a kérdés: ha létrehozok egy objektumot, akkor annak az objektumnak minden fv-ét el tudom érni (hacsak nem private...), de mi van, ha én a létrehozott objektumból akarom meghívni a létrehozó objektum fügvényét? azt hogyan csinálom? Tehát kommunikáljon mindkét irányba.

    Van rá egy nagyon amatör javaslatom. Legyen egy külön osztály, aminek mondjuk egy statikus változója tartalmazza az objektumot (csak legyen időben értékadás :) ), de esetleg a már létrehozáskor is átadhatod magát a hívó objektumot egy új paraméterként (a hívott objektum konstruktorának paraméterlistáját kibővítve).

Új hozzászólás Aktív témák