Hirdetés
- Házimozi haladó szinten
- Samsung LCD és LED TV-k
- AMD Ryzen 9 / 7 / 5 9***(X) "Zen 5" (AM5)
- AMD K6-III, és minden ami RETRO - Oldschool tuning
- CES 2026: máris tekert egyet HBM4 memóriáján az SK Hynix
- NVIDIA GeForce RTX 5080 / 5090 (GB203 / 202)
- Milyen videókártyát?
- Milyen asztali médialejátszót?
- Milyen TV-t vegyek?
- Azonnali notebookos kérdések órája
Új hozzászólás Aktív témák
-
Drizzt
nagyúr
válasz
Dinter
#10108
üzenetére
Valahol van erre minta kódod?
"Ha én az EventHandler-t az App-on belül valósítom meg, akkor minden gombnak az App osztály adattagjának kell lennie, hogy a handle függvényben le tudjam ellenőrizni, hogy melyik osztályban történt a kattintás."
Ez szerintem nem így van. Vagyis nem teljesen értem, hogy mit értesz az alatt, hogy le kell tudd ellenőrizni, hogy melyik osztályban történt a kattintás? Miért kellene ezt leellenőrizni? Ha bárhol csinálsz EventHandler-t implementáló osztályt, azt be tudod állítani event handlernek. Akár csinálhatsz egy olyan függvényt az Appban, ami EventHandler<MouseEvent>-et ad vissza, pl. így:
Class MyApplication {
EventHandler<MouseEvent> createTeamHandler(Team t) {
return new EventHandler<MouseEvent>() {
@Override
public void handle(MouseEvent e) {
System.out.println("MouseEventhandler runs");
t.doSomething();
}
};
}
}És akkor ahol akarod használni:
MyApplication app = new MyApplication();
Team t = new Team();
button.addEventHandler(app.createTeamHandler(t));Mondjuk Javafx-hez sem értek. De ehhez hasonló dolog simán megy pl.: Consumer-ekkel:
public class Book{
public Book(String name) {
this.name = name;
}
private String name;
private Consumer<Book> consumer;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public void setConsumer(Consumer<Book> bookConsumer) {
consumer = bookConsumer;
}
public void consume() {
consumer.accept(this);
}
}
public class Tester {
public static Consumer<Book> getBookConsumer(int number) {
return new Consumer<Book>() {
@Override
public void accept(Book book) {
System.out.println(number);
}
};
}
public static void test() {
Book b1 = new Book("AGILE workflow");
b1.setConsumer((book -> {
System.out.println(visitables.size());
}));
b1.consume();
b1.setConsumer(getBookConsumer(8));
b1.consume();
}
}
Új hozzászólás Aktív témák
A topicot kiemeltem. Valaki nem akar egy nyitó hsz-t írni?:))
- Otthoni hálózat és internet megosztás
- Borotva, szakállnyíró, szakállvágó topic
- Eredeti játékok OFF topik
- Tőzsde és gazdaság
- Futás, futópályák
- Vivo V40 5G - az első benyomás fontos
- Házimozi haladó szinten
- Samsung LCD és LED TV-k
- Megtalálták az akkumulátortechnológiai Szent Grált? - CES
- Mikrotik routerek
- További aktív témák...
- Asus GL553VD FY010T - Intel i7-7700, 16GB RAM, GTX1050 4GB, Samsung 970 NVME 250GB
- Logitech G SAITEK Farm Sim Controller
- Eladó Google Pixel 7pro 8/128. OLVASS
- Dell Precision 3591 FHD Touch / Ultra 7 155H 16C / 16-32G / 512G G4 / RTX Ada / AI IR FPR
- EVGA RTX 3070 FTW3 Ultra 8GB / Csavarmatricás! / Beszámítás OK!
- BESZÁMÍTÁS! GIGABYTE A520M R5 5500 16GB DDR4 512GB SSD GTX 1070 8GB Zalman T3 Plus DeepCool 400W
- iPhone 16 Pro 128GB Desert Titanium -1 ÉV GARANCIA - Kártyafüggetlen
- Dell XPS 13 9300 i7-1065G7 8GB 512GB FHD+ 500nit! 1 év garancia
- GYÖNYÖRŰ iPhone 13 Pro 256GB Sierra Blue -1 ÉV GARANCIA - Kártyafüggetlen, MS3360
- Azonnali készpénzes AMD Radeon RX 5000 sorozat videokártya felvásárlás személyesen / csomagküldéssel
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest


