Mercurial > hg > Members > nobuyasu > tightVNCClient
changeset 105:3599045a7312
add broadcast
author | one |
---|---|
date | Tue, 15 Nov 2011 19:53:47 +0900 |
parents | 5241bf573f69 |
children | df9986f30d09 |
files | src/myVncClient/MyVncClient.java src/myVncClient/TextBox.java |
diffstat | 2 files changed, 99 insertions(+), 21 deletions(-) [+] |
line wrap: on
line diff
--- a/src/myVncClient/MyVncClient.java Mon Nov 07 20:29:49 2011 +0900 +++ b/src/myVncClient/MyVncClient.java Tue Nov 15 19:53:47 2011 +0900 @@ -24,10 +24,12 @@ boolean runflag = false; boolean first = true; - EchoClient echoValue; - int echoPort; - String pHost; - TextBox getHost; + private EchoClient echoValue; + private int echoPort; + private String pHost; + private TextBox getHost; + private GetBroadCast getBcast; + private Thread runBcast; // // main() is called when run as a java program from the command line. @@ -44,13 +46,21 @@ mainArgs = argv; inAnApplet = false; inSeparateFrame = true; - getHost = new TextBox(); + getBcast = new GetBroadCast(); + runBcast = new Thread(getBcast); + runBcast.start(); + + try { + Thread.sleep(5000); + } catch (InterruptedException e) { + e.printStackTrace(); + } + getBcast.setStopFlag(true); if (mainArgs.length > 0) pHost = mainArgs[0]; else { - getHost.ipRegister(); - pHost = getHost.getAddress(); + pHost = getBcast.text.getAddress(); } @@ -58,8 +68,8 @@ if (mainArgs.length > 1) port = Integer.parseInt(mainArgs[1]); else - - port = 5999; + port = Integer.parseInt(getBcast.text.getPort()); +// port = 5999; init(); start_threads();
--- a/src/myVncClient/TextBox.java Mon Nov 07 20:29:49 2011 +0900 +++ b/src/myVncClient/TextBox.java Tue Nov 15 19:53:47 2011 +0900 @@ -3,17 +3,25 @@ import javax.swing.*; import java.awt.*; import java.awt.event.*; +import java.util.ArrayList; public class TextBox extends JFrame implements ActionListener { - JPanel panel = new JPanel(); - JButton button = new JButton("Connect"); - TextField t1; - TextField t2; - double width; - double height; - JLabel label; - boolean flag; + private JPanel panel = new JPanel(); + private JButton button = new JButton("Connect"); + private TextField t1; + private TextField t2; + private double width; + private double height; + private JLabel label; + private boolean flag; + ArrayList<String> temp = new ArrayList<String>(); + private int counter=0; + private Checkbox[] check = new Checkbox[20]; + private boolean firstFlag=true; + private String hostAddress; + private String port; + public void ipRegister() { setSize(); @@ -21,13 +29,15 @@ visible(); } + public TextBox() { setTitle("Informatin Connection Address"); setResizable(false); setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); } + - void setSize() { + private void setSize() { Dimension d = Toolkit.getDefaultToolkit().getScreenSize(); width = (d.getWidth() / 2); height = (d.getHeight() / 2); @@ -41,7 +51,7 @@ setVisible(true); } - void setText() { + private void setText() { t1 = new TextField("dimolto.cr.ie.u-ryukyu.ac.jp", 30); t2 = new TextField("5999", 5); panel.add(t1); @@ -54,6 +64,49 @@ contentPane.add(label, BorderLayout.SOUTH); } + void checkBox(String str) { + CheckboxGroup ch = new CheckboxGroup(); + check[counter] = new Checkbox(str,ch,false); + check[counter].setBackground(new Color(0,153,255)); + panel.add(check[counter]); + panel.setLayout(new GridLayout(counter+2, 0)); + counter++; + } + + void setButton(){ + panel.add(button); + panel.setBackground(Color.blue); + button.addActionListener(this); + Container contentPane = getContentPane(); + contentPane.add(panel, BorderLayout.CENTER); + } + + String splitString(String str) { + String[] split = str.split("\\*");; + String comper; + if(split.length>4) { + split[4] = null; + } + comper = split[1]+split[3]; + if(firstFlag) { + temp.add(comper); + firstFlag = false; + return "port:"+split[0]+":host:"+split[1]+":proxy:"+split[3]; + } + for(int t=0;t<temp.size();t++){ + if(!(comper.equals(temp.get(t)))){ + if(t == temp.size()-1){ + temp.add(comper); + return "port:"+split[0]+":host:"+split[1]+":proxy:"+split[3]; + } + } else { + break; + } + } + return null; + } + + public String getAddress() { while(!(flag)) { try { @@ -62,13 +115,28 @@ e.printStackTrace(); } } - return t1.getText(); + return hostAddress; + //return t1.getText(); } + public String getPort() { - return t2.getText(); + return port; + //return t2.getText(); } public void actionPerformed(ActionEvent e) { flag = true; + for(int t=0;t<counter;t++) { + if(check[t].getState()) + System.out.println(check[t].getLabel()); + setStatus(check[t].getLabel()); + } + } + + private void setStatus(String str) { + String[] temp = str.split(":"); + port = temp[1]; + System.out.println("port="+port); + hostAddress = temp[5]; } }