JInternal フレームを使用して Java スイング アプリケーションを作成しました。内部フレームを閉じると、「よろしいですか?」というポップ メッセージが表示されます。オプションペインで。JInternal フレームのクローズ操作にイベントを入れるにはどうすればよいですか? 私を助けてください。
1 に答える
8
の記述方法については、 http://docs.oracle.com/javase/tutorial/uiswing/events/internalframelistener.htmlを参照してくださいInternalFrameListener
。internalFrameClosing(InternalFrameEvent e)
メソッド内に閉じるためのすべてのコードを配置できます。
次に、前のリンクでわかるように、メソッドを使用しInternalFrameListener
て、新しく作成されたの新しいインスタンスを に追加するだけです。JInternalFrame
JInternalFrame
addInternalFrameListener
addInternalFrameListener
メソッドに関する情報は次のとおりです: JavaDoc
コード:
public class InternalFrameEventDemo implements InternalFrameListener{
JInternalFrame frame;
public InternalFrameEventDemo() {
frame = new JInternalFrame("Event Generator",
true, //resizable
true, //closable
true, //maximizable
true); //iconifiable
//so that you can decide whether to close it or not
frame.setDefaultCloseOperation(JInternalFrame.DO_NOTHING_ON_CLOSE);
frame.addInternalFrameListener(this);
}
public void internalFrameClosing(InternalFrameEvent e) {
//YOUR CODE HERE
int option = JOptionPane.showConfirmDialog(null, "Really Close?", "Exit", JOptionPane.YES_NO_OPTION);
if (option == JOptionPane.YES_OPTION){
//call dispose to really close it
dispose();
}
}
public void internalFrameClosed(InternalFrameEvent e) {
}
public void internalFrameOpened(InternalFrameEvent e) {
}
public void internalFrameIconified(InternalFrameEvent e) {
}
public void internalFrameDeiconified(InternalFrameEvent e) {
}
public void internalFrameActivated(InternalFrameEvent e) {
}
public void internalFrameDeactivated(InternalFrameEvent e) {
}
public static void main(String[] args) {
new InternalFrameEventDemo();
}
}
于 2013-09-05T10:03:17.730 に答える