diff --git a/src/main/java/info/istlab/IoTP/Launcher.java b/src/main/java/info/istlab/IoTP/Launcher.java index 5474bd6..aa42f36 100644 --- a/src/main/java/info/istlab/IoTP/Launcher.java +++ b/src/main/java/info/istlab/IoTP/Launcher.java @@ -144,7 +144,7 @@ menu.add(mi); mi = new JMenuItem(isEnglish ? "MQTT Client" : "MQTTクライアント"); - mi.addActionListener(ae -> MqttWindow.create() ); + mi.addActionListener(ae -> MqttWindow.create().setVisible(true) ); menu.add(mi); setJMenuBar(menuBar); diff --git a/src/main/java/info/istlab/IoTP/MqttWindow.java b/src/main/java/info/istlab/IoTP/MqttWindow.java index 02d0dac..15398f6 100644 --- a/src/main/java/info/istlab/IoTP/MqttWindow.java +++ b/src/main/java/info/istlab/IoTP/MqttWindow.java @@ -252,13 +252,15 @@ subscriber = null; appendToJTA("Disconnected.\n"); jta.setBackground(Color.gray); + MqttWindow.theMqttWindow = null; } connectB.setText("Connect"); - MqttWindow.theMqttWindow = null; if (Launcher.theapp == null || !Launcher.theapp.isVisible()) System.exit(0); - else + else { + setVisible(false); dispose(); + } } @Override diff --git a/src/main/java/info/istlab/IoTP/SerialWindow.java b/src/main/java/info/istlab/IoTP/SerialWindow.java index dfb6e04..003f244 100644 --- a/src/main/java/info/istlab/IoTP/SerialWindow.java +++ b/src/main/java/info/istlab/IoTP/SerialWindow.java @@ -52,7 +52,7 @@ SerialPort sp = splist_valid.get(0); App.serialName = sp.getSystemPortName(); } else if (splist_valid.size()==0){ - if (popup_if_zero) JOptionPane.showMessageDialog(null, "No available serial ports."); + if (popup_if_zero) JOptionPane.showMessageDialog(Launcher.theapp, "No available serial ports."); } else { SerialSelector.show(splist_valid.toArray(new SerialPort[]{})); } @@ -72,7 +72,7 @@ SerialWindow sw = new SerialWindow(sp); hash.put(sp.getSystemPortName(), sw); } else if (splist_valid.size()==0){ - JOptionPane.showMessageDialog(null, "No available serial ports."); + JOptionPane.showMessageDialog(Launcher.theapp, "No available serial ports."); } else { SerialSelector.show(splist_valid.toArray(new SerialPort[]{})); } @@ -85,7 +85,7 @@ sp.addDataListener(this); System.out.println(sp.getSystemPortName()); if (!sp.openPort()) { - JOptionPane.showMessageDialog(null, "他のプログラムがシリアルポート "+sp.getSystemPortName()+" を使用しています。"); + JOptionPane.showMessageDialog(Launcher.theapp, "他のプログラムがシリアルポート "+sp.getSystemPortName()+" を使用しています。"); System.out.println("Unable to open the port."); return; }