|
Programiranje Programski jezici, tehnike, alatke... |
|
Alatke vezane za temu | Vrste prikaza |
12.6.2013, 14:42 | #21 |
Banned
|
Java - malo objasnjenje
Pozdrav
Poceo sam da ucim Javu, ne zato sto sam zeleo to, vec zbog faxa, ali opet, nikad nije na odmet nauciti jos neki jezik. Imam jednu nedoumicu, tj. potrebno mi je malo objasnjenje... Na primer, imam klasu sa imenom Klasa1. U drugoj klasi sa imenom Klasa2, imam inicijalizaciju promenljivih npr: private Klasa1 ime; Sta to zapravo znaci i sta to radi? Drugo pitanje... U Klasi2 imam definiciju neke metode...npr: public void imeMetode(Klasa1 ime) Nije mi jasno sta je ovo sto je u zagradi? Da li je tip parametra "ime" zapravo klasa? I ako jeste koji je to onda tip? Sta to radi I trece pitanje...Kada u odredjenoj klasi imam metodu: public String toString() { return "Neki tekst" } da li se ta metoda uvek sama poziva kada se pozove klasa ili ne? Unapred hvala |
12.6.2013, 15:30 | #22 | |||
Veteran
|
Re: Java - malo objasnjenje
Citat:
private Klasa1 ime; znaci da si definisao promenljivu tipa Klasa1. Kada npr. napises String naziv; String je isto klasa (kao i tvoja Klasa1) sa svojim metodama. Citat:
Citat:
Ako napises tu takvu metodu u klasi kada ispisujes objekat te klase sa npr: System.out.println(moj_objekat); U konzoli ce ti izaci to sto pises u return-u, "Neki tekst". Sve u svemu, kako se ova pitanja ticu se samih osnova Jave i objektno orjentisanog programiranja moja preporuka ti je da uzmes knjigu i krenes iz pocetka, promenljive, metode, klase, objekti. I kako koji primer prelazis kucaj na kompu i isprobaj sve sto ti padne na pamet. Bitno ti je da shvatis ove osnove, jer bez ovoga neces poloziti ispit. |
|||
Sledeći korisnik se zahvaljuje korisniku Ivan452 na korisnoj poruci: | ||
PeTkO (12.6.2013) |
12.6.2013, 16:51 | #23 |
Banned
|
Re: Java - malo objasnjenje
Nije problem u knjizi (koju inace nemamo jer "nam nije potrebna"), vec u sturim prezentacijama sa predavanja (odakle ucimo, zamena za knjige) i prekucavanje koda (bez objasnjenja, ili vrlo malog) sa projektora na svoje racunare na vezbama...A ako studentu nesto nije jasno, tu je uvek google...
Nasao sam neke YT serijale klipova, pa cu da gledam odatle... |
12.6.2013, 20:21 | #24 |
Starosedelac
Član od: 23.2.2006.
Lokacija: Tamo gde su kuće od čokolade i prozori od marmelade....
Poruke: 1.579
Zahvalnice: 195
Zahvaljeno 301 puta na 171 poruka
|
Re: Java - malo objasnjenje
http://poincare.matf.bg.ac.rs/~stasa/OOP.html
Imaš tu kakve takve slajdove A što se tiče knjige Horton je majka za javu Imaš i ovde neke slajdove http://poincare.matf.bg.ac.rs/~vlada...es/Matf%20OOP/ Kao i navedenu literaturu, sobzirom da smo sličan fax verujem da će ti pomoći |
Sledeći korisnik se zahvaljuje korisniku Teva na korisnoj poruci: | ||
PeTkO (12.6.2013) |
29.7.2013, 12:56 | #25 |
Član
Član od: 20.1.2013.
Poruke: 194
Zahvalnice: 54
Zahvaljeno jedanput na jednoj poruci
|
Pauza izmedju dogadjaja Java
Treba mi pomoc oko jednog programa. Napravim niz buttona koje stavim u panel. Pojave se dugmad ali ne znam kako da stavim sleep izmedju svakog pojavljivanja. Da bude jedno dugme pa sleep(100); pa sledece i tako dok se ne popuni niz. meni se sad svih 5 dugmadi automatski pojavi. Probao sam da stavim jednsotavno sleep izmedju dodavanja dugmadi ali nece tako.
Evo kod: Kod:
public void run(){ JButton [] butt= new JButton[5]; for(int i=0; i<butt.length; i++){ butt[0] = new JButton(); butt[1] = new JButton(); butt[2] = new JButton(); butt[3] = new JButton(); butt[4] = new JButton(); paneli[i].add(butt[0]).setBackground(Color.blue); paneli[i].add(butt[1]).setBackground(Color.blue); paneli[i].add(butt[2]).setBackground(Color.blue); paneli[i].add(butt[3]).setBackground(Color.blue); paneli[i].add(butt[4]).setBackground(Color.blue); butt[i].setVisible(false); butt[i].setVisible(true); } Poslednja ispravka: Andross (29.7.2013 u 15:12) Razlog: Jos jedna "pomoc java" tema i nece biti lepo |
29.7.2013, 13:46 | #26 |
Veteran
Član od: 3.5.2008.
Lokacija: Beograd
Poruke: 760
Zahvalnice: 81
Zahvaljeno 213 puta na 144 poruka
|
Re: java pomoc
Sleep bi trebalo da se stavi između poziva setVisible(). Mislim da ti ne trebaju setVisible(false), dovoljno je samo sa true.
Samo malo pojasni šta imaš i šta radiš, da bi mogli da rešimo. Čini mi se da imaš 5 panela, i u svaki stavljaš po 5 digmadi. Ali ne pozivaš setVisible za svih 25 dugmadi. Sad ne znam kako tačno radi Swing ali moguće da može da dođe do neke kolizije između sleep-a i renderinga prozora i kontrola (odnosno da se prikaz ne renderuje odmah po pozivu setVisible). Ako neko zna da nije ovako, onda ništa. |
29.7.2013, 14:31 | #27 |
Veteran
|
Re: java pomoc
Nema potrebe da pravis pauzu izmedju dodavanja dugmica, napravi je samo izmedju njihovog prikazivanja.
Znaci dugmice dodaj na panel standardno i neka budu nevidljiva. I onda u posebnom threadu odradi za svako dugme butt[i].setVisible(true); i odmah posle toga Thread.sleep(100); |
29.7.2013, 15:47 | #28 |
Član
Član od: 20.1.2013.
Poruke: 194
Zahvalnice: 54
Zahvaljeno jedanput na jednoj poruci
|
Re: Pauza izmedju dogadjaja Java
E ovako, da objasnim prvo zadatak.
Treba da napravim 5 panela i u svaki panel po 5 kvadratica. Stim kvadratici nesmiju rucno da se generisu. Kvadratici trebaju da se popunjavaju tipa u prvi panel 1,2,3,4,5 pa onda slijedi drugi panel 1,2,3,4,5 i tako sve do kraja. Ja sam napravio GUI klasu i u njoj 5 panela, kad kliknem start trebaju kvadratici da pocnu da se popunjavaju u panele. Evo kako izgleda kod u GUI: http://postimg.org/image/hdnxxljp7/ dizajn: http://postimg.org/image/aykbn6nln/ I na kraju kad pokrenem program dobijem ovo: http://postimg.org/image/y2pdtigaj/ Prvi panel se popuni ali je problem sto popuni prva 4 kvadratica i onda tek odradi pauzi i peti i tako na isti nacin i ostale panele. Kod:
import java.awt.Button; import java.awt.Color; import java.util.Random; import javax.swing.ImageIcon; import javax.swing.JButton; import javax.swing.JPanel; public class Display extends Thread{ private int speed; public int getSpeed() { return speed; } public void setSpeed(int speed) { this.speed = speed; } private JPanel [] paneli; public JPanel[] getPaneli() { return paneli; } public void setPaneli(JPanel[] paneli) { this.paneli = paneli; } public void run(){ JButton [] butt= new JButton[5]; for(int i=0; i<butt.length; i++){ butt[0] = new JButton(); butt[1] = new JButton(); butt[2] = new JButton(); butt[3] = new JButton(); butt[4] = new JButton(); paneli[i].add(butt[0]).setBackground(Color.blue); try { sleep(100); } catch (InterruptedException e) { // TODO Auto-generated catch block e.printStackTrace(); } paneli[i].add(butt[1]).setBackground(Color.blue); try { sleep(100); } catch (InterruptedException e) { // TODO Auto-generated catch block e.printStackTrace(); } paneli[i].add(butt[2]).setBackground(Color.blue); try { sleep(100); } catch (InterruptedException e) { // TODO Auto-generated catch block e.printStackTrace(); } paneli[i].add(butt[3]).setBackground(Color.blue); try { sleep(100); } catch (InterruptedException e) { // TODO Auto-generated catch block e.printStackTrace(); } paneli[i].add(butt[4]).setBackground(Color.blue); butt[i].setVisible(false); try { sleep(1000); } catch (InterruptedException e) { // TODO Auto-generated catch block e.printStackTrace(); } butt[i].setVisible(true); } while(true){ } } } |
29.7.2013, 19:22 | #29 |
Veteran
|
Re: Pauza izmedju dogadjaja Java
Da li je moguce da pauzu od 100ms i ne vidis? da primetis tek poslednju posto je ona 1sec?
|
29.7.2013, 19:24 | #30 |
Veteran
|
Re: Pauza izmedju dogadjaja Java
Da li je moguce da pauzu od 100ms i ne vidis? da primetis tek poslednju posto je ona 1sec?
P.S Ako ti na 5 panela treba po 5 dugmica, da li si siguran da zelis da rasporedjujes 5 istih ili ti mozda treba 25? |
29.7.2013, 19:55 | #31 |
Član
Član od: 20.1.2013.
Poruke: 194
Zahvalnice: 54
Zahvaljeno jedanput na jednoj poruci
|
Re: Pauza izmedju dogadjaja Java
Testirao sam sa 1000ms tako da je isto
Ja sam ovaj zadatak ranije odradio samo mi isto pauza nije radila. Nemogu da se sjetim kako sam uradio ali nijesam ovako generisao dugmad. Znam da sam u niz stavio 5 dugmadi i u if stavio koje ce boje da budu i to je to ali sad nema sanse da mogu da napravim. Ni sa 5 ni sa 25 |
29.7.2013, 20:56 | #32 |
Veteran
Član od: 3.5.2008.
Lokacija: Beograd
Poruke: 760
Zahvalnice: 81
Zahvaljeno 213 puta na 144 poruka
|
Re: Pauza izmedju dogadjaja Java
Probaj ovako.
Kod:
public void run(){ JButton[] butt= new JButton[5]; for(int i = 0; i < paneli.length; i++) { for (int j = 0; j < butt.length; j++) { butt[j] = new JButton(); paneli[i].add(butt[j]).setBackground(Color.blue); } for (int j = 0; j < butt.length; j++) { butt[j].setVisible(false); try { sleep(500); } catch (InterruptedException e) {} butt[j].setVisible(true); paneli[i].repaint(); } } } Poslednja ispravka: ivan90BG (29.7.2013 u 21:26) |
Sledeći korisnik se zahvaljuje korisniku ivan90BG na korisnoj poruci: | ||
BlueJ (30.7.2013) |
30.7.2013, 0:26 | #33 |
Član
Član od: 20.1.2013.
Poruke: 194
Zahvalnice: 54
Zahvaljeno jedanput na jednoj poruci
|
Re: Pauza izmedju dogadjaja Java
Ovo radi isto kao i moje. Manje je koda ja sam ono bukvalno ispisao
Evo jar fajl: http://www.sendspace.com/file/yhicr0 |
30.7.2013, 0:53 | #34 |
Član
Član od: 20.1.2013.
Poruke: 194
Zahvalnice: 54
Zahvaljeno jedanput na jednoj poruci
|
Re: Pauza izmedju dogadjaja Java
Dodjoh do nekog rjesenja samo jos da stavim tu pauzu da mi prikazuje normalno
JAR fajl: http://www.sendspace.com/file/piy3ar Ovo za boje je toliko jednsotavno ali dzabe kad nemogu da se sjetim, nije me bog dao za programiranje Kod:
public void run(){ JButton[] butt= new JButton[5]; for(int i =0; i<butt.length; i++){ JButton b = new JButton(); b.setVisible(false); butt[i] = b; paneli[i].add(butt[i]); } while(true){ for(int i=0; i<butt.length; i++){ if(i==0){ butt[i].setBackground(Color.green); } if(i==1){ butt[i].setBackground(Color.blue); } if(i==2){ butt[i].setBackground(Color.yellow); } if(i==3){ butt[i].setBackground(Color.white); } if(i==4){ butt[i].setBackground(Color.black); } try { sleep(100); } catch (InterruptedException e) { // TODO Auto-generated catch block e.printStackTrace(); } butt[i].setVisible(true); } } } |
30.7.2013, 1:09 | #35 |
Veteran
Član od: 3.5.2008.
Lokacija: Beograd
Poruke: 760
Zahvalnice: 81
Zahvaljeno 213 puta na 144 poruka
|
Re: Pauza izmedju dogadjaja Java
Evo ti ovo. Provereno radi
Kod:
public void run() { JButton[] butt = new JButton[5]; for (int i = 0; i < this.paneli.length; i++) { for (int j = 0; j < butt.length; j++) { butt[j] = new JButton(); this.paneli[i].add(butt[j]).setBackground(Color.blue); try {sleep(500L);} catch (InterruptedException e) {} butt[j].setVisible(false); butt[j].setVisible(true); paneli[i].repaint(); } } } |
Sledeći korisnik se zahvaljuje korisniku ivan90BG na korisnoj poruci: | ||
BlueJ (30.7.2013) |
30.7.2013, 11:36 | #36 |
Član
Član od: 20.1.2013.
Poruke: 194
Zahvalnice: 54
Zahvaljeno jedanput na jednoj poruci
|
Re: Pauza izmedju dogadjaja Java
Ovo zadnje rjesenje mi u jedan panel stavi automatski 5 dugmadi onda pauzira i doda jos 5 dugmadi u isti panel. Znaci 10 u prvi panel stavi pa onda istu stvar i za ostale
|
30.7.2013, 11:47 | #37 |
Član
Član od: 20.1.2013.
Poruke: 194
Zahvalnice: 54
Zahvaljeno jedanput na jednoj poruci
|
Re: Pauza izmedju dogadjaja Java
Kod:
for(int i=0; i<butt.length; i++){ if(i==0){ butt[i].setBackground(Color.green); } if(i==1){ butt[i].setBackground(Color.blue); } Naprimer ako je na 0 on bi trebao da oboji u zeleno prvo dugme a ne svih 5 dugmadi kojih se nalazi u panel? Nesto sam pogresno uradio zato nemogu pauzu da napravim izmedju dugmadi vec mi pravi pauzu izmedju svakih 5 dugmadi. Moze li biti da je problem ovdje? Ustvari tu i jeste problem koliko vidim , a ono tvoje rjesenje je ispravno a i ovo vjerujem samo je ovdje problem. Kod:
private JButton getBtnStart(){ if(btnStart == null){ btnStart = new JButton("Start"); btnStart.setBounds(120, 217, 97, 25); btnStart.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { JPanel [] i = {panel, panel_1, panel_2, panel_3, panel_4, panel_5}; d= new Display(); d.setPaneli(i); d.start(); d1= new Display(); d1.setPaneli(i); d1.start(); d2= new Display(); d2.setPaneli(i); d2.start(); d3= new Display(); d3.setPaneli(i); d3.start(); d4= new Display(); d4.setPaneli(i); d4.start(); } }); } return btnStart; } |
30.7.2013, 12:07 | #38 |
Veteran
Član od: 3.5.2008.
Lokacija: Beograd
Poruke: 760
Zahvalnice: 81
Zahvaljeno 213 puta na 144 poruka
|
Re: Pauza izmedju dogadjaja Java
Ako hoćeš da imaš dugmad raznih boja, samo napravi niz boja.
Kod:
public void run() { JButton[] butt = new JButton[5]; Color[] colors = { Color.BLUE, Color.GREEN, Color.RED, Color.YELLOW, Color.ORANGE }; for (int i = 0; i < this.paneli.length; i++) { for (int j = 0; j < butt.length; j++) { butt[j] = new JButton(); this.paneli[i].add(butt[j]).setBackground(colors[j]); try {sleep(500L);} catch (InterruptedException e) {} butt[j].setVisible(false); butt[j].setVisible(true); paneli[i].repaint(); } } } Poslednja ispravka: ivan90BG (30.7.2013 u 12:23) |
Sledeći korisnik se zahvaljuje korisniku ivan90BG na korisnoj poruci: | ||
BlueJ (30.7.2013) |
30.7.2013, 12:45 | #39 |
Član
Član od: 20.1.2013.
Poruke: 194
Zahvalnice: 54
Zahvaljeno jedanput na jednoj poruci
|
Re: Pauza izmedju dogadjaja Java
Evo sto meni izbaca sa tim kodom zadnjim koji si mi napisao.
http://www.sendspace.com/file/982suo Uglavnom blizu sam rjesenja hvala ti puno |
30.7.2013, 13:39 | #40 |
Veteran
Član od: 3.5.2008.
Lokacija: Beograd
Poruke: 760
Zahvalnice: 81
Zahvaljeno 213 puta na 144 poruka
|
Re: Pauza izmedju dogadjaja Java
Pa kreiraj samo jedan thread. Odnosno ne trebaju ti 5 instanci Display-a već samo jedna. Znači samo jedan Display kreiraj, daj mu niz panela i startuj ga. I to je to.
Metoda koja kreira dugme Strat treba da bude ovakva: Kod:
private JButton getBtnStart() { if (this.btnStart == null) { btnStart = new JButton("Start"); btnStart.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { JPanel[] i = { panel, panel_1, panel_2, panel_3, panel_4, panel_5 }; d = new Display(); d.setPaneli(i); d.start(); } }); btnStart.setBounds(120, 217, 97, 25); } return btnStart; } Poslednja ispravka: ivan90BG (30.7.2013 u 13:56) |
Sledeći korisnik se zahvaljuje korisniku ivan90BG na korisnoj poruci: | ||
BlueJ (30.7.2013) |
Bookmarks sajtovi |
Tagovi |
java |
|
|
Slične teme | ||||
tema | temu započeo | forum | Odgovora | Poslednja poruka |
Java - out of Memory | Vajsmilan | Aplikativni softver | 6 | 6.2.2012 20:54 |
Android - pozivanje Java metoda iz native koda | voodoo_ | Programiranje | 5 | 14.10.2011 8:59 |
Samsung D600 Java upload (USB cable) | Aleksandar | Programi za mobilne telefone | 0 | 16.6.2008 13:54 |
Jel' se ovo misli na Java Script ili? | Tim85 | Internet tehnologije | 2 | 7.12.2006 12:33 |
G-thing program za LG(imam U8180) za java igre trazim gde ima? besplatno?trial? | Ilic Marko | Programi za mobilne telefone | 1 | 9.2.2006 14:09 |