dlaczego nie moge przekazac obiektu to watku ?
rafal - 04-01-2006 09:34
dlaczego nie moge przekazac obiektu to watku ?
jak w temacie : chodzi mi o JTextArea tak zebym mógl ze środka metody(wątku) wpisywać do niego informacje przychodzące na serwer (taki mini chat).
public class Frame1 extends JFrame { JPanel contentPane; JButton jButton1 = new JButton(); Runnable zadaniewatku = new MojeZadanie(); Thread mojwatek = new Thread(zadaniewatku);
JTextArea jTextArea1 = new JTextArea(); JTextField jTextField1 = new JTextField(); JScrollPane jScrollPane1 = new JScrollPane(jTextField1);
...... //TUTAJ JEST PRZYCISK - po kliknięciu chciałbym żeby obiekt został przekazany do wątku ale wywala mi błąd:(
public void jButton1_actionPerformed(ActionEvent e) { mojwatek.start(JTextArea jTextArea1); - tu pojawia sie błąd }
.... class MojeZadanie implements Runnable { public void run(JTextArea jTextArea1) {
String porada = null; // ServerSocket gniazdoSrw = null; try { ServerSocket gniazdoSrw = new ServerSocket(4242); while (true) { Socket gniazdo = gniazdoSrw.accept(); InputStreamReader strUser = new InputStreamReader(gniazdo. getInputStream()); BufferedReader user = new BufferedReader(strUser); porada = user.readLine(); //okno.append(porada); System.out.println(porada); user.close(); gniazdo.close(); } } catch(IOException ex) { ex.printStackTrace(); } } }
opis bledu: a.. "Frame1.java": ')' expected at line 54, column 34 b.. "Application1.java": cannot find symbol; symbol : class Frame1, location: class untitled18.Application1 at line 27, column 9 c.. "Application1.java": cannot find symbol; symbol : class Frame1, location: class untitled18.Application1 at line 27, column 28
Rami - 04-01-2006 09:34
Użytkownik "rafal" <kobex@wp.pl> napisał w wiadomości news:dpei0j$p3n$1@nemesis.news.tpi.pl... > jak w temacie : chodzi mi o JTextArea tak zebym mógl ze środka > metody(wątku) wpisywać do niego informacje przychodzące na serwer (taki > mini chat). > > > public class Frame1 extends JFrame { > JPanel contentPane; > JButton jButton1 = new JButton(); > Runnable zadaniewatku = new MojeZadanie(); > Thread mojwatek = new Thread(zadaniewatku); > > JTextArea jTextArea1 = new JTextArea(); > JTextField jTextField1 = new JTextField(); > JScrollPane jScrollPane1 = new JScrollPane(jTextField1); > > ..... > //TUTAJ JEST PRZYCISK - po kliknięciu chciałbym żeby obiekt został > przekazany do wątku ale wywala mi błąd:( > > public void jButton1_actionPerformed(ActionEvent e) { > mojwatek.start(JTextArea jTextArea1); - tu pojawia sie > błąd > } > > ... > class MojeZadanie implements Runnable { > public void run(JTextArea jTextArea1) { > > String porada = null; > // ServerSocket gniazdoSrw = null; > try { > ServerSocket gniazdoSrw = new ServerSocket(4242); > while (true) { > Socket gniazdo = gniazdoSrw.accept(); > InputStreamReader strUser = new > InputStreamReader(gniazdo. > getInputStream()); > BufferedReader user = new BufferedReader(strUser); > porada = user.readLine(); > //okno.append(porada); > System.out.println(porada); > user.close(); > gniazdo.close(); > } > } catch(IOException ex) { ex.printStackTrace(); } > } > } > > > > opis bledu: > a.. "Frame1.java": ')' expected at line 54, column 34 > b.. "Application1.java": cannot find symbol; symbol : class Frame1, > location: class untitled18.Application1 at line 27, column 9 > c.. "Application1.java": cannot find symbol; symbol : class Frame1, > location: class untitled18.Application1 at line 27, column 28 > >
metoda run() z interfejsu Runnable nie może przyjmować parametrów.
rafal - 04-01-2006 09:34
> > metoda run() z interfejsu Runnable nie może przyjmować parametrów.
no to jak mam wyświetlić informacje które przychodza na serwer w okienku ?? hm
Rafał
Rami - 04-01-2006 09:34
Użytkownik "rafal" <kobex@wp.pl> napisał w wiadomości news:dpend6$d41$1@nemesis.news.tpi.pl... > > >> metoda run() z interfejsu Runnable nie może przyjmować parametrów. > > no to jak mam wyświetlić informacje które przychodza na serwer w okienku > ?? hm > > Rafał
wątki nie mogą się komunikować w taki sposób. informacje można przesłać implementując prosty message passing, np za pomocą socketów.
Brzezi - 04-01-2006 09:34
wto, 03 sty 2006 o 23:03 GMT, Rami napisał(a):
> wątki nie mogą się komunikować w taki sposób. informacje można przesłać > implementując prosty message passing, np za pomocą socketów.
sockety? a po co? niby jak? chyba raczej chodzilo ci o pipey...
ja czasami jeszcze uzywam poprostu np. listy i syncronizacji, czekam na dane przez wait, w innym watku wkladam cos do listy i daje notify, zalezy do czego, czasami uzywam tego czasami tego...., ale napewno nie socketow :)
Pozdrawiam Brzezi -- [ E-mail: brzezi@enter.net.pl ][ ] [ Ekg: #3781111 ][ ] [ LinuxUser: #249916 ][ ]
Zbyszek Malec - 04-01-2006 09:34
Brzezi wrote (tak! stara dobra wrotka!):
> ja czasami jeszcze uzywam poprostu np. listy i syncronizacji, czekam na > dane przez wait, w innym watku wkladam cos do listy i daje notify, zalezy > do czego, czasami uzywam tego czasami tego...., ale napewno nie socketow :)
Warto też wspomnieć że w 1.5 pojawiła się BlockingQueue (albo jakoś tak). W ogóle warto przyjrzeć się pakietowi java.concurrent.
-- Zbigniew Malec Ustronie:104 gg:2756100
zanotowane.pldoc.pisz.plpdf.pisz.pleffulla.pev.pl
|
[Oracle, Toad] Zaladowanie obiektu w TOAD
=?iso-8859-2?Q?mo=BFliwo=B6=E6_kupienia_zestaw=F3w_obiekt=F3w _ro=B6lin?=
=?ISO-8859-2?Q?Jak_sprawdzi=E6_czy_obiekt_zosta=B3_utowrzony= 3F?=
corel... jak spłaszczyć obiekt z jego obrysem aby stanowiło jedną całość
jak naniesc na obraz skale pokazujaca rzeczywisty rozmiar sfotografowanego obiektu
[swing] Kolorowa ramka/tło w obiektach JTextComponent z ustawionym focusem.
[sybase] Jak w sprawdzić strukturę obiektu (tabeli) w Interactive SQL ???
wyrownanie obiektu wzgledem innego w PS - czy jest taki skrot?
Obiektowy PL/SQL - problem z typem REF
[PG 8.2] - konwencje nazewnictwa =?ISO-8859-2?Q?obiekt=F3w?=
zanotowane.pldoc.pisz.plpdf.pisz.plabsolwenci.keep.pl
Cytat
Decede mihi sole - nie zasłaniaj mi słonca. Gdy kogoś kochasz, jesteś jak stworzyciel świata - na cokolwiek spojrzysz, nabiera to kształtu, wypełnia się barwą, światłem. Powietrze przytula się do ciebie, choćby był mróz, a ty masz w sobie tyle radości, że musisz ją rozdawać wokoło, bo się w tobie nie mieści Hoc fac - tak czyń. A tergo - od tyłu; z tyłu. I czarne włosy posiwieją. Safona |
|