import java.awt.*; import java.awt.print.*; import java.awt.event.*; import java.io.*; import java.util.Date; import java.net.*; public class Ruhma extends Frame implements ActionListener{ Panel alus=new Panel(); Panel nupu=new Panel(); Panel p2=new Panel(); //loob m'llu Button b=new Button("Save"); Frame f=new Frame(); String[] reisiandmed={"Koht", "Sihtpunkt", "Hind", "Ostuaeg", "Reisi algus"}; Label [] s1=new Label[5]; TextField[] v1=new TextField[5]; Checkbox[] c1=new Checkbox[16]; String[] k={"1", "5", "9", "13", "2", "6", "10", "14", "3", "7", "11", "15", "4", "8", "12", "16"}; public Ruhma(){ b.addActionListener(this); //nupukuular nupule alus.setLayout(new GridLayout(5,2)); //paneb paneelile sildid for(int i=0;i<5;i++){ s1 [i]=new Label(reisiandmed[i]); alus.add(s1[i]); v1 [i]=new TextField(); //ja tekstiv'ljad alus.add(v1[i]); } v1[3].setText(new Date().toString()); //v'ljale kuup'ev v1[4].setText("17.00"); //bussiv'ljumise aeg p2.setLayout(new GridLayout(4,4)); for(int i=0; i<16; i++){ //teisele paneelile checkboxid, c1 [i]=new Checkbox(k[i]); //mis kujutavad endast bussiistmeid p2.add(c1[i]); f.setSize(220, 180); //loob raami f.setLocation(300, 150); f.setVisible(true); } setLayout(new GridLayout(3,2)); add(alus); //paneb ekraanile paneelid add(p2); nupu.add(b); add(nupu); } public void actionPerformed(ActionEvent e){ //nupuvajutuse korral kirjutab try{ //faili istekoha numbri PrintWriter faili=new PrintWriter( new FileWriter("Ruhmatoo3.java", true)); faili.println("Koht: "+v1[0].getText()); faili.println("Hind: "+v1[2].getText()); System.out.println( "Koht:"+" "+v1[0].getText()); System.out.println( "Hind:"+" "+v1[2].getText()); faili.close(); Socket sc=new Socket("ws11.cs3.tpu.ee", 3001); //votab uhendust teise arvutiga PrintWriter va=new PrintWriter(sc.getOutputStream(), true); va.println("Koht:"+v1[0].getText()); va.println( "Hind:"+" "+v1[2].getText()); } catch(Exception ex){ System.out.println("Probleem"+ex); } Graphics g=f.getGraphics(); //kujundus piletile g.setColor(Color.black); g.drawRect(10, 60, 200, 100); //joonistab raami g.drawString("Koht:"+" "+v1[0].getText(),20, 80); //paneb kirjad g.drawString("Sihtpunkt:"+" "+v1[1].getText(), 20, 100); g.drawString("Valjub:"+" "+v1[4].getText(), 20, 120); g.drawString("Kuupaev:"+" "+v1[3].getText(), 20, 140); v1[0].setText(" "); v1[1].setText(" "); //puhastab tekstiv'ljad v1[2].setText(" "); } public static void main(String argumendid[]) throws Exception{ Frame f=new Ruhma(); f.setSize(300,290); //loob pohiraami f.setVisible(true); ServerSocket ss=new ServerSocket(3002); //juhul, kui teine arvuti votab while(true){ //uhendust new Ruhmaloim(ss.accept()); } } } class Ruhmaloim extends Thread{ Socket sc; //loim, et saaks mitu korraga int nr; //uhendust public Ruhmaloim(Socket uus_sc) { sc=uus_sc; start(); } public void run(){ try{ BufferedReader sisse=new BufferedReader( //kui voetakse uhendust, siis loeb, new InputStreamReader(sc.getInputStream())); //kirjutatu String rida=" "; while((rida=sisse.readLine())!=null)System.out.println(rida); sc.close(); }catch(Exception ex){ System.out.println(ex); } } }