import java.io.IOException; | import java.io.IOException; | ||||
import java.net.MalformedURLException; | import java.net.MalformedURLException; | ||||
import java.net.URL; | |||||
import javax.swing.JFrame; | import javax.swing.JFrame; | ||||
import javax.swing.WindowConstants; | import javax.swing.WindowConstants; | ||||
import netz.controller.BtnController; | |||||
import netz.controller.ChatController; | |||||
import netz.controller.ReceiveAdapter; | |||||
import netz.controller.CommandConnect; | |||||
import netz.controller.CommandSend; | |||||
import netz.model.ChatModel; | import netz.model.ChatModel; | ||||
import netz.view2.ChatView; | |||||
import netz.view.ChatView; | |||||
import java.util.logging.Logger; | |||||
import javax.swing.JOptionPane; | |||||
import javax.swing.UIManager; | |||||
import ohmlogger.OhmLogger; | |||||
/** | /** | ||||
* Builder Class | * Builder Class | ||||
*/ | */ | ||||
public class Start | public class Start | ||||
{ | { | ||||
public Start() throws MalformedURLException, IOException | |||||
private static Logger lg = OhmLogger.getLogger(); | |||||
public Start() | |||||
{ | { | ||||
// URL oUrl = new URL(urlString + "/" + dateiname); | |||||
// InputStream iStream = oUrl.openStream(); | |||||
// BufferedInputStream in = new BufferedInputStream(iStream); | |||||
// | |||||
// String tmpVerzeichnis = System.getProperty("java.io.tmpdir"); | |||||
// String ausgabeDateiname = tmpVerzeichnis + File.separator + dateiname; | |||||
// | |||||
// FileOutputStream fos = new FileOutputStream(ausgabeDateiname); | |||||
// BufferedOutputStream out = new BufferedOutputStream(fos); | |||||
// | |||||
// int wert = 0; | |||||
// | |||||
// while ( (wert = in.read()) >= 0) | |||||
// { | |||||
// out.write(wert); | |||||
// } | |||||
// in.close(); | |||||
// out.close(); // flush! | |||||
// System.out.println("Datei " + ausgabeDateiname + " erfolgreich erstellt"); | |||||
JFrame frm = new JFrame(); | JFrame frm = new JFrame(); | ||||
frm.setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE); | frm.setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE); | ||||
ChatView view = new ChatView(); | ChatView view = new ChatView(); | ||||
ChatModel model = new ChatModel(); | ChatModel model = new ChatModel(); | ||||
BtnController btncontroller = new BtnController(view, model); | |||||
ChatController chatcontroller = new ChatController(view, model); | |||||
btncontroller.registerEvents(); | |||||
chatcontroller.registerEvents(); | |||||
CommandConnect cmdConnect = new CommandConnect(view, model); | |||||
cmdConnect.registerEvents(); | |||||
CommandSend cmdSend = new CommandSend(view, model); | |||||
cmdSend.registerEvents(); | |||||
ReceiveAdapter recAdapter = new ReceiveAdapter(view, model); | |||||
recAdapter.subscribe(); | |||||
view.setVisible(true); | |||||
view.setTitle("Chat"); | |||||
view.setSize(800, 600); | view.setSize(800, 600); | ||||
view.setVisible(true); | |||||
} | } | ||||
public static void main(String[] args) | public static void main(String[] args) | ||||
{ | { | ||||
try | try | ||||
{ | { | ||||
new Start(); | |||||
UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName()); | |||||
} | } | ||||
catch (Exception ex) | catch (Exception ex) | ||||
{ | { | ||||
System.err.println(ex); | |||||
ex.printStackTrace(); | |||||
} | |||||
try | |||||
{ | |||||
new Start(); | |||||
} | |||||
catch (Exception ex) | |||||
{ | |||||
System.err.println(ex); | |||||
ex.printStackTrace(); | |||||
JOptionPane.showMessageDialog(null, ex.toString()); | |||||
} | } | ||||
new Start(); | |||||
} | } | ||||
} | |||||
} |
/* | |||||
* To change this license header, choose License Headers in Project Properties. | |||||
* To change this template file, choose Tools | Templates | |||||
* and open the template in the editor. | |||||
*/ | |||||
package netz.controller; | |||||
import java.awt.event.ActionEvent; | |||||
import java.awt.event.ActionListener; | |||||
import java.util.logging.Logger; | |||||
import netz.model.ChatModel; | |||||
import netz.view2.ChatView; | |||||
import ohmlogger.OhmLogger; | |||||
/** | |||||
* | |||||
* @author chris | |||||
*/ | |||||
public class BtnController implements ActionListener | |||||
{ | |||||
private ChatView view; | |||||
private ChatModel model; | |||||
private static Logger lg = OhmLogger.getLogger(); | |||||
/** | |||||
* | |||||
* @param view | |||||
* @param model | |||||
*/ | |||||
public BtnController(ChatView view, ChatModel model) | |||||
{ | |||||
this.view = view; | |||||
this.model = model; | |||||
} | |||||
public void registerEvents() | |||||
{ | |||||
view.getBtnSetClient().addActionListener(this); | |||||
view.getBtnSetServer().addActionListener(this); | |||||
} | |||||
@Override | |||||
public void actionPerformed(ActionEvent e) | |||||
{ | |||||
if(e.getSource() == view.getBtnSetClient()) | |||||
{ | |||||
view.getLblType().setText("Client"); | |||||
try | |||||
{ | |||||
model.startClient(36000, "127.0.0.1",new ChatController(view, model)); | |||||
} | |||||
catch (Exception ex) | |||||
{ | |||||
System.err.println(ex); | |||||
ex.printStackTrace(); | |||||
} | |||||
} else { | |||||
view.getLblType().setText("Server"); | |||||
try | |||||
{ | |||||
model.startServer(36000, new ChatController(view, model)); | |||||
} | |||||
catch (Exception ex) | |||||
{ | |||||
System.err.println(ex); | |||||
ex.printStackTrace(); | |||||
} | |||||
} | |||||
} | |||||
} |
/* | |||||
* To change this license header, choose License Headers in Project Properties. | |||||
* To change this template file, choose Tools | Templates | |||||
* and open the template in the editor. | |||||
*/ | |||||
package netz.controller; | |||||
import java.awt.event.ActionEvent; | |||||
import java.awt.event.ActionListener; | |||||
import java.util.logging.Logger; | |||||
import netz.model.ChatModel; | |||||
import netz.view2.ChatView; | |||||
import ohmlogger.OhmLogger; | |||||
/** | |||||
* | |||||
* @author chris | |||||
*/ | |||||
public class ChatController implements ActionListener | |||||
{ | |||||
private ChatView view; | |||||
private ChatModel model; | |||||
private static Logger lg = OhmLogger.getLogger(); | |||||
/** | |||||
* | |||||
* @param view | |||||
* @param model | |||||
*/ | |||||
public ChatController(ChatView view, ChatModel model) | |||||
{ | |||||
this.view = view; | |||||
this.model = model; | |||||
} | |||||
public void registerEvents() | |||||
{ | |||||
view.getBtnSend().addActionListener(this); | |||||
} | |||||
@Override | |||||
public void actionPerformed(ActionEvent e) | |||||
{ | |||||
} | |||||
public void upddateStatus(String status) | |||||
{ | |||||
view.getLblStatusDialog().setText(status); | |||||
} | |||||
} |
package netz.model; | package netz.model; | ||||
import ohmlogger.OhmLogger; | |||||
import java.io.BufferedReader; | import java.io.BufferedReader; | ||||
import java.io.IOException; | import java.io.IOException; | ||||
import java.io.InputStream; | import java.io.InputStream; | ||||
import java.io.OutputStream; | import java.io.OutputStream; | ||||
import java.io.OutputStreamWriter; | import java.io.OutputStreamWriter; | ||||
import java.io.PrintWriter; | import java.io.PrintWriter; | ||||
import java.net.ServerSocket; | |||||
import java.net.Socket; | import java.net.Socket; | ||||
import java.util.concurrent.ExecutorService; | import java.util.concurrent.ExecutorService; | ||||
import java.util.concurrent.Executors; | import java.util.concurrent.Executors; | ||||
import java.util.concurrent.SubmissionPublisher; | import java.util.concurrent.SubmissionPublisher; | ||||
import java.util.logging.Level; | import java.util.logging.Level; | ||||
import java.util.logging.Logger; | import java.util.logging.Logger; | ||||
import netz.controller.ChatController; | |||||
import ohmlogger.OhmLogger; | |||||
/** | /** | ||||
* | * | ||||
* @author chris | |||||
* @author hd, chris | |||||
*/ | */ | ||||
public class ChatModel | |||||
public class ChatModel implements Runnable | |||||
{ | { | ||||
private static Logger lg = OhmLogger.getLogger(); | private static Logger lg = OhmLogger.getLogger(); | ||||
private ServerRunnable serverRunnable; | |||||
private ClientRunnable clientRunnable; | |||||
// private ChatController controller; | |||||
private ExecutorService eService; | |||||
private SubmissionPublisher<String> iPublisher; | |||||
private volatile boolean laufend; | |||||
String nachricht; | |||||
BufferedReader in; | |||||
PrintWriter out; | |||||
private Socket socket; | |||||
public ChatModel() | public ChatModel() | ||||
{ | { | ||||
laufend = false; | |||||
iPublisher = new SubmissionPublisher<>(); | |||||
eService = Executors.newSingleThreadExecutor(); | |||||
} | } | ||||
public void startServer(int PORT, ChatController chatcontroller) throws IOException | |||||
public void addSubscription(Flow.Subscriber<String> subscriber) | |||||
{ | { | ||||
ServerSocket sSocket = new ServerSocket(PORT); | |||||
serverRunnable = new ServerRunnable(sSocket); | |||||
chatcontroller.upddateStatus("Server: Warte auf Verbindung ..."); | |||||
iPublisher.subscribe(subscriber); | |||||
} | } | ||||
public void startClient(int PORT, String ip_adresse, ChatController chatcontroller) throws IOException | |||||
public synchronized void start(){ | |||||
laufend = true; | |||||
eService.submit(this); | |||||
this.notifyAll();//muss sync | |||||
lg.info("startet"); | |||||
} | |||||
@Override | |||||
public void run() | |||||
{ | |||||
while(true){ | |||||
try { | |||||
nachricht = in.readLine(); | |||||
lg.info("Nachricht empfangen: " + nachricht); | |||||
iPublisher.submit(nachricht);//wenn neue Nachricht | |||||
} catch (IOException ex) { | |||||
lg.log(Level.SEVERE, ex.toString()); | |||||
} | |||||
} | |||||
} | |||||
public void setSocket(Socket s) throws IOException { | |||||
this.socket = s; | |||||
InputStream iStream = s.getInputStream(); | |||||
OutputStream oStream = s.getOutputStream(); | |||||
InputStreamReader isr = new InputStreamReader(iStream, "UTF-8"); | |||||
OutputStreamWriter osr = new OutputStreamWriter(oStream, "UTF-8"); | |||||
in = new BufferedReader(isr); | |||||
//BufferedWriter out = new BufferedWriter(osr); | |||||
out = new PrintWriter(osr); | |||||
start(); | |||||
} | |||||
public void sendMessage(String msg) | |||||
{ | { | ||||
clientRunnable = new ClientRunnable(ip_adresse, PORT); | |||||
chatcontroller.upddateStatus("Client: Warte auf Verbindung ..."); | |||||
if(laufend){ | |||||
lg.log(Level.INFO, "Sende Nachricht: " + msg); | |||||
out.println(msg); | |||||
out.flush(); | |||||
} | |||||
else{ | |||||
lg.log(Level.INFO, "Keine Verbindung!"); | |||||
} | |||||
} | } | ||||
} | } | ||||
//public class Bandit implements Runnable | |||||
//{ | |||||
// private static Logger lg = OhmLogger.getLogger(); | |||||
// | |||||
// private BanditInfo info; | |||||
// private volatile boolean laufend; | |||||
// private ExecutorService eService; | |||||
// private SubmissionPublisher<BanditInfo> iPublisher; | |||||
// | |||||
// public Bandit(int nr) | |||||
// { | |||||
// info = new BanditInfo(nr); | |||||
// synchronized(this) | |||||
// { | |||||
// laufend = true; | |||||
// } | |||||
// eService = Executors.newSingleThreadExecutor(); | |||||
// iPublisher = new SubmissionPublisher<>(); | |||||
// | |||||
// } | |||||
// | |||||
// /** | |||||
// * startet würfeln | |||||
// */ | |||||
// public synchronized void start() | |||||
// { | |||||
// laufend = true; | |||||
// eService.submit(this); | |||||
// this.notifyAll(); | |||||
// lg.info("Thread startet"); | |||||
// } | |||||
// | |||||
// /** | |||||
// * stopt würfeln | |||||
// * | |||||
// */ | |||||
// public void stop() | |||||
// { | |||||
// synchronized(this) | |||||
// { | |||||
// laufend = false; | |||||
// } | |||||
// lg.info("Thread stopt"); | |||||
// } | |||||
// | |||||
// public void addSubscription(Flow.Subscriber<BanditInfo> subscriber) | |||||
// { | |||||
// iPublisher.subscribe(subscriber); | |||||
// } | |||||
// | |||||
// private synchronized void doWait() | |||||
// { | |||||
// try | |||||
// { | |||||
// this.wait(); | |||||
// } catch (InterruptedException ex) | |||||
// { | |||||
// Logger.getLogger(Bandit.class.getName()).log(Level.SEVERE, null, ex); | |||||
// } | |||||
// } | |||||
// | |||||
// @Override | |||||
// public void run() | |||||
// { | |||||
// | |||||
// while(true) | |||||
// { | |||||
// | |||||
// while(!laufend) | |||||
// this.doWait(); | |||||
// | |||||
// try | |||||
// { | |||||
// Thread.sleep(10); | |||||
// } catch (InterruptedException ex) | |||||
// { | |||||
// Logger.getLogger(Bandit.class.getName()).log(Level.SEVERE, null, ex); | |||||
// } | |||||
// info.setZaehlerWert((int)(Math.round(Math.random()*100) % 9) + 1); | |||||
// iPublisher.submit(info); | |||||
// } | |||||
// } | |||||
//} | |||||
/* | |||||
* To change this license header, choose License Headers in Project Properties. | |||||
* To change this template file, choose Tools | Templates | |||||
* and open the template in the editor. | |||||
*/ | |||||
package netz.model; | |||||
import java.io.BufferedReader; | |||||
import java.io.IOException; | |||||
import java.io.InputStream; | |||||
import java.io.InputStreamReader; | |||||
import java.io.OutputStream; | |||||
import java.io.OutputStreamWriter; | |||||
import java.io.PrintWriter; | |||||
import java.net.ServerSocket; | |||||
import java.net.Socket; | |||||
import java.util.concurrent.ExecutorService; | |||||
import java.util.concurrent.Executors; | |||||
import java.util.logging.Level; | |||||
import java.util.logging.Logger; | |||||
import ohmlogger.OhmLogger; | |||||
/** | |||||
* | |||||
* @author chris | |||||
*/ | |||||
public class ClientRunnable implements Runnable | |||||
{ | |||||
private static Logger lg = OhmLogger.getLogger(); | |||||
private String ip_adresse; | |||||
private int port; | |||||
private ExecutorService eService; | |||||
public ClientRunnable(String IP_ADRESSE, int PORT) throws IOException | |||||
{ | |||||
this.ip_adresse = IP_ADRESSE; | |||||
this.port = PORT; | |||||
eService = Executors.newSingleThreadExecutor(); | |||||
this.start(); | |||||
} | |||||
public synchronized void start() | |||||
{ | |||||
eService.submit(this); | |||||
this.notifyAll(); | |||||
lg.info("Thread startet"); | |||||
} | |||||
@Override | |||||
public void run() | |||||
{ | |||||
try | |||||
{ | |||||
lg.info("Client: verbinde ..."); | |||||
Socket s = new Socket(ip_adresse, port); // Achtung: blockiert! | |||||
lg.info("Client: Verbindung hergestellt"); | |||||
InputStream iStream = s.getInputStream(); | |||||
OutputStream oStream = s.getOutputStream(); | |||||
InputStreamReader isr = new InputStreamReader(iStream, "UTF-8"); | |||||
OutputStreamWriter osr = new OutputStreamWriter(oStream, "UTF-8"); | |||||
BufferedReader in = new BufferedReader(isr); | |||||
//BufferedWriter out = new BufferedWriter(osr); | |||||
PrintWriter out = new PrintWriter(osr); | |||||
lg.info("Client: Stream initialisiert"); | |||||
out.println("Hallo Du Server Du - ich bin der client"); | |||||
out.flush(); // wirklich absenden!! | |||||
lg.info("Client: Nachricht versendet"); | |||||
String quittung = in.readLine(); // Achtung blockiert | |||||
lg.info("Client: Quittung empfangen"); | |||||
System.out.println("Client: Quittung EMPFANGEN - " + quittung); | |||||
out.close(); | |||||
in.close(); | |||||
} | |||||
catch (Exception ex) | |||||
{ | |||||
Logger.getLogger(ServerRunnable.class.getName()).log(Level.SEVERE, null, ex); | |||||
} | |||||
} | |||||
} |
/* | |||||
* To change this license header, choose License Headers in Project Properties. | |||||
* To change this template file, choose Tools | Templates | |||||
* and open the template in the editor. | |||||
*/ | |||||
package netz.model; | |||||
import java.io.BufferedReader; | |||||
import java.io.IOException; | |||||
import java.io.InputStream; | |||||
import java.io.InputStreamReader; | |||||
import java.io.OutputStream; | |||||
import java.io.OutputStreamWriter; | |||||
import java.io.PrintWriter; | |||||
import java.net.ServerSocket; | |||||
import java.net.Socket; | |||||
import java.util.concurrent.ExecutorService; | |||||
import java.util.concurrent.Executors; | |||||
import java.util.logging.Level; | |||||
import java.util.logging.Logger; | |||||
import ohmlogger.OhmLogger; | |||||
/** | |||||
* | |||||
* @author chris | |||||
*/ | |||||
public class ServerRunnable implements Runnable | |||||
{ | |||||
private static Logger lg = OhmLogger.getLogger(); | |||||
private ServerSocket sSocket; | |||||
private Socket s; | |||||
private ExecutorService eService; | |||||
ServerRunnable(ServerSocket sSocket) throws IOException | |||||
{ | |||||
this.sSocket = sSocket; | |||||
eService = Executors.newSingleThreadExecutor(); | |||||
lg.info("Server: Warte auf Verbindung ..."); | |||||
this.start(); | |||||
} | |||||
public synchronized void start() | |||||
{ | |||||
eService.submit(this); | |||||
this.notifyAll(); | |||||
lg.info("Thread startet"); | |||||
} | |||||
@Override | |||||
public void run() | |||||
{ | |||||
try | |||||
{ | |||||
s = sSocket.accept(); // Achtung: blockiert! | |||||
lg.info("Server: Verbindung akzeptiert"); | |||||
InputStream iStream = s.getInputStream(); | |||||
OutputStream oStream = s.getOutputStream(); | |||||
InputStreamReader isr = new InputStreamReader(iStream, "UTF-8"); | |||||
OutputStreamWriter osr = new OutputStreamWriter(oStream, "UTF-8"); | |||||
BufferedReader in = new BufferedReader(isr); | |||||
//BufferedWriter out = new BufferedWriter(osr); | |||||
PrintWriter out = new PrintWriter(osr); | |||||
lg.info("Server: Stream initialisiert"); | |||||
lg.info("Server: warte auf Nachricht ..."); | |||||
String nachricht = in.readLine(); // Achtung blockiert | |||||
lg.info("Server: Nachricht empfangen"); | |||||
System.out.println("Server: NACHRICHT EMPFANGEN - " + nachricht); | |||||
out.println("Server -> ich habe die Nachricht erhalten"); | |||||
lg.info("Server: Quittung versendet"); | |||||
out.flush(); // wirklich absenden!! | |||||
out.close(); | |||||
in.close(); | |||||
} | |||||
catch (IOException ex) | |||||
{ | |||||
Logger.getLogger(ServerRunnable.class.getName()).log(Level.SEVERE, null, ex); | |||||
} | |||||
} | |||||
} |
</SubComponents> | </SubComponents> | ||||
</Container> | </Container> | ||||
<Component class="javax.swing.JTextField" name="txtField"> | <Component class="javax.swing.JTextField" name="txtField"> | ||||
<Properties> | |||||
<Property name="text" type="java.lang.String" value="jTextField1"/> | |||||
</Properties> | |||||
<Events> | |||||
<EventHandler event="actionPerformed" listener="java.awt.event.ActionListener" parameters="java.awt.event.ActionEvent" handler="txtFieldActionPerformed"/> | |||||
</Events> | |||||
<Constraints> | <Constraints> | ||||
<Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignBorderLayout" value="org.netbeans.modules.form.compat2.layouts.DesignBorderLayout$BorderConstraintsDescription"> | <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignBorderLayout" value="org.netbeans.modules.form.compat2.layouts.DesignBorderLayout$BorderConstraintsDescription"> | ||||
<BorderConstraints direction="Center"/> | <BorderConstraints direction="Center"/> | ||||
</Constraint> | </Constraint> | ||||
</Constraints> | </Constraints> | ||||
</Component> | </Component> | ||||
<Container class="javax.swing.JScrollPane" name="jScrollPane1"> | |||||
<AuxValues> | |||||
<AuxValue name="autoScrollPane" type="java.lang.Boolean" value="true"/> | |||||
</AuxValues> | |||||
<Constraints> | |||||
<Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignBorderLayout" value="org.netbeans.modules.form.compat2.layouts.DesignBorderLayout$BorderConstraintsDescription"> | |||||
<BorderConstraints direction="Before"/> | |||||
</Constraint> | |||||
</Constraints> | |||||
<Layout class="org.netbeans.modules.form.compat2.layouts.support.JScrollPaneSupportLayout"/> | |||||
<SubComponents> | |||||
<Component class="javax.swing.JTextArea" name="jTextArea"> | |||||
<Properties> | |||||
<Property name="columns" type="int" value="20"/> | |||||
<Property name="rows" type="int" value="5"/> | |||||
</Properties> | |||||
</Component> | |||||
</SubComponents> | |||||
</Container> | |||||
</SubComponents> | </SubComponents> | ||||
</Form> | </Form> |
* To change this template file, choose Tools | Templates | * To change this template file, choose Tools | Templates | ||||
* and open the template in the editor. | * and open the template in the editor. | ||||
*/ | */ | ||||
package netz.view2; | |||||
package netz.view; | |||||
/** | /** | ||||
* | * | ||||
public class ChatView extends javax.swing.JFrame | public class ChatView extends javax.swing.JFrame | ||||
{ | { | ||||
/** | |||||
* @return the jTextArea | |||||
*/ | |||||
public javax.swing.JTextArea getjTextArea() | |||||
{ | |||||
return jTextArea; | |||||
} | |||||
/** | /** | ||||
* @return the btnSend | * @return the btnSend | ||||
*/ | */ | ||||
txtField = new javax.swing.JTextField(); | txtField = new javax.swing.JTextField(); | ||||
btnSend = new javax.swing.JButton(); | btnSend = new javax.swing.JButton(); | ||||
lblStatusDialog = new javax.swing.JLabel(); | lblStatusDialog = new javax.swing.JLabel(); | ||||
jScrollPane1 = new javax.swing.JScrollPane(); | |||||
jTextArea = new javax.swing.JTextArea(); | |||||
setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE); | setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE); | ||||
setTitle("ChatTool"); | setTitle("ChatTool"); | ||||
getContentPane().add(jPanel1, java.awt.BorderLayout.PAGE_START); | getContentPane().add(jPanel1, java.awt.BorderLayout.PAGE_START); | ||||
txtField.setText("jTextField1"); | |||||
txtField.addActionListener(new java.awt.event.ActionListener() | |||||
{ | |||||
public void actionPerformed(java.awt.event.ActionEvent evt) | |||||
{ | |||||
txtFieldActionPerformed(evt); | |||||
} | |||||
}); | |||||
getContentPane().add(txtField, java.awt.BorderLayout.CENTER); | getContentPane().add(txtField, java.awt.BorderLayout.CENTER); | ||||
btnSend.setText("Send"); | btnSend.setText("Send"); | ||||
lblStatusDialog.setText("\"\""); | lblStatusDialog.setText("\"\""); | ||||
getContentPane().add(lblStatusDialog, java.awt.BorderLayout.PAGE_END); | getContentPane().add(lblStatusDialog, java.awt.BorderLayout.PAGE_END); | ||||
jTextArea.setColumns(20); | |||||
jTextArea.setRows(5); | |||||
jScrollPane1.setViewportView(jTextArea); | |||||
getContentPane().add(jScrollPane1, java.awt.BorderLayout.LINE_START); | |||||
pack(); | pack(); | ||||
}// </editor-fold>//GEN-END:initComponents | }// </editor-fold>//GEN-END:initComponents | ||||
private void txtFieldActionPerformed(java.awt.event.ActionEvent evt)//GEN-FIRST:event_txtFieldActionPerformed | |||||
{//GEN-HEADEREND:event_txtFieldActionPerformed | |||||
// TODO add your handling code here: | |||||
}//GEN-LAST:event_txtFieldActionPerformed | |||||
/** | /** | ||||
* @param args the command line arguments | * @param args the command line arguments | ||||
*/ | */ | ||||
private javax.swing.JButton btnSetClient; | private javax.swing.JButton btnSetClient; | ||||
private javax.swing.JButton btnSetServer; | private javax.swing.JButton btnSetServer; | ||||
private javax.swing.JPanel jPanel1; | private javax.swing.JPanel jPanel1; | ||||
private javax.swing.JScrollPane jScrollPane1; | |||||
private javax.swing.JTextArea jTextArea; | |||||
private javax.swing.JLabel lblStatusDialog; | private javax.swing.JLabel lblStatusDialog; | ||||
private javax.swing.JLabel lblType; | private javax.swing.JLabel lblType; | ||||
private javax.swing.JTextField txtField; | private javax.swing.JTextField txtField; | ||||
// End of variables declaration//GEN-END:variables | // End of variables declaration//GEN-END:variables | ||||
} | |||||
} |