কীভাবে প্রোগ্রামে কোনও জেফ্রেম বন্ধ করতে হয়


251

JFrameবন্ধ করার সঠিক উপায় কী , যদি ব্যবহারকারীটি Xবন্ধ বোতামটি আঘাত করেছে বা Alt+ F4(উইন্ডোজে) চাপেছে ?

আমার ডিফল্ট ঘনিষ্ঠ অপারেশনটি আমার যেভাবে চাইবে সেট করে দিয়েছে:

setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

পূর্বোক্ত নিয়ন্ত্রণগুলি সহ আমি যা চাই তা ঠিক তা করে does এই প্রশ্নটি সে সম্পর্কে নয়।

আমি সত্যিই যা করতে চাই তা হ'ল জিইউআই একইভাবে আচরণ Xকরবে কারণ ক্লোজড বোতামটি চাপলে এটি আচরণ করতে পারে।

মনে করুন আমি প্রসারিত করব WindowAdaptorএবং তারপরে শ্রোতা হিসাবে আমার অ্যাডাপ্টারের একটি উদাহরণ যুক্ত করব addWindowListener()। আমি মাধ্যমে কল একই ক্রম দেখতে চাই windowDeactivated(), windowClosing()আর windowClosed()সঙ্গে ঘটবে যেমন Xঘনিষ্ঠ বোতাম। নিজেকে ছিঁড়ে ফেলতে বলার মতো উইন্ডোটি ছিঁড়ে এতটা নয়, তাই কথা বলার জন্য।


10
নিষ্পত্তি ব্যবহারে কী ভুল? আমি সর্বদা এটি করেছি।
কাজ

1
হ্যাঁ, jFrame.dispose () উইন্ডোটি বন্ধ করে সবকিছু পরিষ্কার করা উচিত?
টম নেইল্যান্ড

4
কারণ নিষ্পত্তি [x] এ ক্লিক করে উইন্ডোটি বন্ধ করার সমতুল্য 1: 1 নয়?
গ্রীনল্ডম্যান

2
হ্যাঁ ভাল প্রশ্ন, আমি একটি [X] বোতাম আমি স্পষ্টভাবে কাজ করার জন্য একটি JFrame একজন নেড়া ওভাররাইড উপর সরবরাহ একজন ব্যবহারকারী ক্লিক চান ঠিক যেন ব্যবহারকারী ওএস সরবরাহকৃত একটি অপারেটিং সিস্টেম নির্দিষ্ট JFrame জানালা সজ্জিত এ [X] বাটনে ক্লিক করেন।
পিটার্ক

কীভাবে এটি.ডিস্পাচইভেন্ট (ওয়েভ); Toolkit.getDefaultToolkit এর পরিবর্তে ... পূর্ববর্তী হ'ল গ্রহণযোগ্য উত্তর বলে।
জেসন

উত্তর:


320

আপনি যদি জিইউআইটি এমন আচরণ করতে চান যেমন আপনি Xক্লোজ বোতামটি ক্লিক করেছেন তবে আপনাকে উইন্ডোটি বন্ধ করার ইভেন্টটি পাঠাতে হবে WindowExitActionথেকে একটি অ্যাপ্লিকেশন বন্ধ আপনি একটি মেনু আইটেম বা কোন উপাদান যা ব্যবহার করার জন্য এই কার্যকারিতা যোগ করার অনুমতি দেয় Actionগুলি সহজে।

frame.dispatchEvent(new WindowEvent(frame, WindowEvent.WINDOW_CLOSING));

আমাকে কি এই জাজফ্রেম.এডিডি উইন্ডোলিস্টনার যুক্ত করতে হবে (নতুন উইন্ডোএডাপ্টার () {@ ওভাররাইড পাবলিক শূন্য উইন্ডো সমাপ্তি (উইন্ডোএভেন্ট ই) {e.getWindow ()। নিষ্পত্তি ();}}); এই কল করার আগে? বা এটি পাশাপাশি উইন্ডো বন্ধ হবে?
মিমি

1
"কীভাবে প্রোগ্রামে কোনও জেফ্রেম বন্ধ করবেন" - JFrame.EXIT_ON_CLOSE যদি সেট না করা থাকে তবে এটি বন্ধ হবে না। যাইহোক, আমি কেবল ইঙ্গিত করছিলাম যে উত্তরটি যুক্ত করার প্রয়োজন হতে পারে, যেহেতু jframe.setDefaultCloseOperation (উইন্ডোকন্ট্যান্টস.ডো_নোথিংথিক_সিওএলএস); ব্যবহারকারীরা সাধারণভাবে এক্স-এর উইন্ডোটি বন্ধ করতে সক্ষম হওয়া সত্ত্বেও DO_NOTHING_ON_CLOSE সেট করা সত্ত্বেও প্রকৃতপক্ষে এই ইভেন্টটি ট্রিগার করে এটিকে বন্ধ করবে না, তবে এই ইভেন্টটি চালানো হবে না। পার্থক্যটা দেখ?
মিমি

3
@ মোমোমো, কিছুই দেখানোর দরকার ছিল না। এই উত্তরটি ওপি যেমন বলেছে ঠিক তেমনই করবে। এটি "এক্স" ক্লোজড বোতাম যা কিছু করবে তা করবে। প্রশ্নের শিরোনাম প্রশ্ন নয়। ওপি বিশেষত বলেছিল যে ডিফল্ট ঘনিষ্ঠ অপারেশনটি "প্রস্থান" করার জন্য প্রস্তুত ছিল, সুতরাং "কিছুই করবেন না" তা অপ্রাসঙ্গিক কারণ ওপি সে বিষয়ে জিজ্ঞাসা করছে না। দয়া করে আপনার সমস্ত মন্তব্য মুছুন যাতে আপনি এই উত্তরটি পড়তে অন্য লোককে বিভ্রান্ত করবেন না, যেহেতু উত্তরটি ওপির প্রশ্নের সরাসরি উত্তর দেওয়ার জন্য দেওয়া হয়েছিল, প্রশ্নের শিরোনামের আপনার ব্যাখ্যা নয়।
ক্যামিকার

131
setVisible(false); //you can't see me!
dispose(); //Destroy the JFrame object

খুব জটিল নয়।


38
কিন্তু এটি ইভেন্ট শ্রোতাদের কল করে না।
বোম্বে

6
এছাড়াও, এটি যদি একটি ঘনিষ্ঠ বোতাম হয়, প্রক্রিয়াটি পাশাপাশি পটভূমিতে চলতে থাকবে।
অস্টিন এ

1
ডিফল্ট ঘনিষ্ঠ অপারেশনটি যদি EXIT_ON_CLOSE এ থাকে বা বোতাম শ্রোতা কোনও প্রয়োজনীয় সংস্থান বন্ধ করে তবেই নয়।
মেলিন্ডা সবুজ

এটি শ্রোতাদের ডাকবে না।
স্টিফান রেইচ

26

Alt + F4 চাপুন অথবা X দ্বারা আপনি কি বোঝাতে চেয়েছেন তাহলে "জন্য আর কি কি Windows অথবা টপিক দৌড়াচ্ছে ব্যাপারে ছাড়া অবিলম্বে অ্যাপ্লিকেশন থেকে প্রস্থান করুন" তাহলে, System.exit(...)কি করতে হবে ঠিক , কি আপনি একটি খুব আকস্মিক, বলপূর্বক চান এবং সম্ভবত সমস্যাযুক্ত ফ্যাশন।

যদি Alt-F4 বা এক্স দ্বারা আপনি উইন্ডোটি আড়াল করে বোঝাতে চান তবে আপনি উইন্ডোটি frame.setVisible(false)কীভাবে "বন্ধ" করবেন। উইন্ডোটি রিসোর্স / মেমরি গ্রাস করতে থাকবে তবে খুব দ্রুত আবার দৃশ্যমান করা যাবে।

যদি Alt-F4 বা X এর দ্বারা আপনি উইন্ডোটি আড়াল করে এবং এটি ব্যবহার করা কোনও সংস্থান নিষ্পত্তি করে থাকেন তবে frame.dispose()আপনি কীভাবে উইন্ডোটি "বন্ধ" করবেন। যদি ফ্রেমটি সর্বশেষ দৃশ্যমান উইন্ডো ছিল এবং অন্য কোনও ডেমন থ্রেড চলমান না থাকে তবে প্রোগ্রামটি প্রস্থান করবে। আপনি যদি আবার উইন্ডোটি দেখান, তবে এটি পুনরুদ্ধার করতে হবে সমস্ত নেটিভ রিসোর্সগুলিকে (গ্রাফিক্স বাফার, উইন্ডো হ্যান্ডলগুলি, ইত্যাদি)।

dispose()আপনি যে আচরণটি চান সত্যিই এটি সবচেয়ে কাছের হতে পারে। যদি আপনার অ্যাপ্লিকেশনটিতে একাধিক উইন্ডোজ খোলা থাকে, আপনি কি আল্ট-এফ 4 বা এক্স অ্যাপ্লিকেশনটি ছেড়ে দিতে বা সক্রিয় উইন্ডোটি বন্ধ করতে চান?

জাভা সুইং উইন্ডো শ্রোতাদের ওপর টিউটোরিয়াল আপনার জন্য কিছু নির্মল সাহায্য করতে পারে।


15

ব্যবহারকারী যদি উইন্ডোটি বন্ধ করতে না পারে তা নিশ্চিত করার জন্য আপনি এটি করেছেন:

frame.setDefaultCloseOperation(JFrame.DO_NOTHING_ON_CLOSE);

তারপরে আপনার নিজের pullThePlug()পদ্ধতিটি পরিবর্তন করা উচিত

public void pullThePlug() {
    // this will make sure WindowListener.windowClosing() et al. will be called.
    WindowEvent wev = new WindowEvent(this, WindowEvent.WINDOW_CLOSING);
    Toolkit.getDefaultToolkit().getSystemEventQueue().postEvent(wev);

    // this will hide and dispose the frame, so that the application quits by
    // itself if there is nothing else around. 
    setVisible(false);
    dispose();
    // if you have other similar frames around, you should dispose them, too.

    // finally, call this to really exit. 
    // i/o libraries such as WiiRemoteJ need this. 
    // also, this is what swing does for JFrame.EXIT_ON_CLOSE
    System.exit(0); 
}

আমি এটি খুঁজে পেলাম যে এটি একমাত্র উপায় যা WindowListenerএবং এর সাথে দুর্দান্ত খেলে JFrame.DO_NOTHING_ON_CLOSE


11

এখানে আপনার বিকল্পগুলি হবে:

System.exit(0); // stop program
frame.dispose(); // close window
frame.setVisible(false); // hide window

8

জাভা চলমান প্রক্রিয়া থেকে প্রস্থান করা খুব সহজ, মূলত আপনার কেবল দুটি সাধারণ কাজ করতে হবে:

  1. System.exit(...)অ্যাপ্লিকেশনটির প্রস্থান বিন্দুতে জাভা পদ্ধতিতে কল করুন । উদাহরণস্বরূপ, যদি আপনার অ্যাপ্লিকেশনটি ফ্রেম ভিত্তিক হয় তবে আপনি শ্রোতাদের যুক্ত করতে পারেন WindowAdapterএবং System.exit(...)এর পদ্ধতির অভ্যন্তরে কল করতে পারেন windowClosing(WindowEvent e)

দ্রষ্টব্য: আপনাকে অবশ্যই কল করতে হবে System.exit(...)অন্যথায় আপনার প্রোগ্রামে ত্রুটি জড়িত।

  1. প্রস্থান পদ্ধতিটি সর্বদা বলা যেতে পারে তা নিশ্চিত করতে অপ্রত্যাশিত জাভা ব্যতিক্রম এড়ানো। আপনি যদি System.exit(...)সঠিক বিন্দুতে যোগ করেন তবে এর অর্থ এই নয় যে পদ্ধতিটি সর্বদা বলা যেতে পারে, কারণ অপ্রত্যাশিত জাভা ব্যতিক্রমগুলি পদ্ধতিটি ডাকতে বাধা দিতে পারে।

এটি আপনার প্রোগ্রামিং দক্ষতার সাথে দৃ .়ভাবে সম্পর্কিত।

** নিম্নলিখিতটি একটি সাধারণ নমুনা ( JFrameভিত্তিক) যা আপনাকে কীভাবে প্রস্থান পদ্ধতিতে কল করতে হবে তা দেখায়

import java.awt.event.*;
import javax.swing.*;

public class ExitApp extends JFrame
{
   public ExitApp()
   {
      addWindowListener(new WindowAdapter()
      {
         public void windowClosing(WindowEvent e)
         {
           dispose();
           System.exit(0); //calling the method is a must
         }
      });
   }

   public static void main(String[] args)
   {
      ExitApp app=new ExitApp();
      app.setBounds(133,100,532,400);
      app.setVisible(true);
   }
}

7

কেবল জেফ্রেম বন্ধ করতে নয় উইন্ডোলিস্টনার ইভেন্টগুলি ট্রিগার করতেও এটি চেষ্টা করুন:

myFrame.dispatchEvent(new WindowEvent(myFrame, WindowEvent.WINDOW_CLOSING));

4

প্রোগ্রামিংগতভাবে একটি সুইং ফ্রেম বন্ধ করার সর্বোত্তম উপায় হ'ল "এক্স" বোতাম টিপলে এটির মতো আচরণ করা। এটি করার জন্য আপনাকে উইন্ডোএডাপ্টার প্রয়োগ করতে হবে যা আপনার প্রয়োজন অনুসারে উপযুক্ত হবে এবং কিছুই করার জন্য ফ্রেমের ডিফল্ট ঘনিষ্ঠ অপারেশন সেট করতে হবে (DO_NOTHING_ON_CLOSE)।

আপনার ফ্রেমটি এভাবে শুরু করুন:

private WindowAdapter windowAdapter = null;

private void initFrame() {

    this.windowAdapter = new WindowAdapter() {
        // WINDOW_CLOSING event handler
        @Override
        public void windowClosing(WindowEvent e) {
            super.windowClosing(e);
            // You can still stop closing if you want to
            int res = JOptionPane.showConfirmDialog(ClosableFrame.this, "Are you sure you want to close?", "Close?", JOptionPane.YES_NO_OPTION);
            if ( res == 0 ) {
                // dispose method issues the WINDOW_CLOSED event
                ClosableFrame.this.dispose();
            }
        }

        // WINDOW_CLOSED event handler
        @Override
        public void windowClosed(WindowEvent e) {
            super.windowClosed(e);
            // Close application if you want to with System.exit(0)
            // but don't forget to dispose of all resources 
            // like child frames, threads, ...
            // System.exit(0);
        }
    };

    // when you press "X" the WINDOW_CLOSING event is called but that is it
    // nothing else happens
    this.setDefaultCloseOperation(ClosableFrame.DO_NOTHING_ON_CLOSE);
    // don't forget this
    this.addWindowListener(this.windowAdapter);
}

আপনি WINDOW_CLOSING ইভেন্টটি প্রেরণ করে ফ্রেমটিকে প্রোগ্রামগতভাবে বন্ধ করতে পারেন:

WindowEvent closingEvent = new WindowEvent(targetFrame, WindowEvent.WINDOW_CLOSING);
Toolkit.getDefaultToolkit().getSystemEventQueue().postEvent(closingEvent);

এটি "এক্স" বোতামটি টিপে দেওয়ার মতো ফ্রেমটি বন্ধ করবে।


4

আপনি যদি সত্যিই যদি না চান যে কোনও জে ফ্রেম বন্ধ হয়ে যায় তখন আপনার অ্যাপ্লিকেশনটি সমাপ্ত হয়,

ব্যবহার: setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);

পরিবর্তে : setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

সমাধানটি কেমন দেখাচ্ছে তার একটি সংক্ষিপ্তসার এখানে দেওয়া হয়েছে,

 myFrame.dispatchEvent(new WindowEvent(myFrame, WindowEvent.WINDOW_CLOSING));

4

এই উত্তরটি অ্যালেক্স দিয়েছিল এবং আমি এটির সুপারিশ করতে চাই। এটি আমার জন্য কাজ করেছিল এবং এটি অন্যথায় সোজা এবং এত সহজ।

setVisible(false); //you can't see me!
dispose(); //Destroy the JFrame object

1
উত্তরের পুনরাবৃত্তি (+90 ভোট সহ) এবং এটি আপনার পক্ষে কাজ করে তা বলার মূল্য কী? সম্ভবত আপনি নিশ্চিত হওয়া উচিত যে আপনি যে উত্তরটি পুনরাবৃত্তি করেছেন তার মন্তব্যে এটি আপনার পক্ষে কাজ করেছে?
টিটি।

আমি এর জন্য সত্যিই খুব দুঃখিত, তবে কখনও কখনও কিছু লোক প্রস্তাবিত কিছু ব্যবহার করে আরও আত্মবিশ্বাস বোধ করে
হামফ্রে

আপনি কী বলছেন তা আমি বুঝতে পেরেছি, তবে মনে করুন যে কাজ করা উত্তরটি ব্যবহার করেছেন এমন প্রত্যেকে আমার জন্য কাজ করেছে এমন উত্তরটি উত্তর যুক্ত করেছে। কেমন লাগবে? শত শত উত্তর অন্য উত্তরের পুনরাবৃত্তি। আইএমও আপনার পক্ষে যে উত্তরটি কাজ করেছে সেটিকে উঁচু করে তোলা ভাল, উত্তরের কোনও মান যুক্ত হলে সম্ভবত উত্তরের উপর কোনও মন্তব্য করুন।
টিটি।

অনেক ধন্যবাদ আমি আপনার বক্তব্য এবং পরের বার যে আমি মন্তব্য করতে কি করব তা দেখতে। কিন্তু upvoting আমি করেছি।
হামফ্রে

2
না, আপনি উচিত শুধু ভোট দিন । কোনও মন্তব্য করবেন না, অন্য উত্তর পোস্ট করবেন না।
ব্যবহারকারী 202729

3

এই উদাহরণগুলি দেখায় যে কীভাবে নিশ্চিত উইন্ডোটির বন্ধ অপারেশনটি উপলব্ধি করা যায়।

উইন্ডোটিতে একটি উইন্ডো অ্যাডাপ্টার রয়েছে যা ডিফল্ট ঘনিষ্ঠ অপারেশনটিকে আপনার উত্তরটিতে নির্ভর করে EXIT_ON_CLOSEবা DO_NOTHING_ON_CLOSEনির্ভর করেOptionDialog

পদ্ধতি closeWindowএর ConfirmedCloseWindowএকটি উইন্ডো বন্ধ করুন ঘটনা আগুন এবং একটি মেনু আইটেম একটি কর্ম যেমন যে কোন জায়গায় অর্থাত ব্যবহার করা যেতে পারে

public class WindowConfirmedCloseAdapter extends WindowAdapter {

    public void windowClosing(WindowEvent e) {

        Object options[] = {"Yes", "No"};

        int close = JOptionPane.showOptionDialog(e.getComponent(),
                "Really want to close this application?\n", "Attention",
                JOptionPane.YES_NO_OPTION,
                JOptionPane.INFORMATION_MESSAGE,
                null,
                options,
                null);

        if(close == JOptionPane.YES_OPTION) {
           ((JFrame)e.getSource()).setDefaultCloseOperation(
                   JFrame.EXIT_ON_CLOSE);
        } else {
           ((JFrame)e.getSource()).setDefaultCloseOperation(
                   JFrame.DO_NOTHING_ON_CLOSE);
        }
    }
}

public class ConfirmedCloseWindow extends JFrame {

    public ConfirmedCloseWindow() {

        addWindowListener(new WindowConfirmedCloseAdapter());
    }

    private void closeWindow() {
        processWindowEvent(new WindowEvent(this, WindowEvent.WINDOW_CLOSING));
    }
}

3

ইতিমধ্যে এখানে সরবরাহ করা জবাবগুলির ভিত্তিতে, আমি এটিকে এভাবে প্রয়োগ করেছি:

JFrame frame= new JFrame()
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

// frame stuffs here ...

frame.dispatchEvent(new WindowEvent(frame, WindowEvent.WINDOW_CLOSING));

জেফ্রেম ইভেন্টটি বন্ধ হয়ে যায় এবং বন্ধ হওয়ার সাথে সাথে প্রস্থান করে।


2

আপনাকে AWT বার্তা কাতারে কলটি sertোকাতে হবে যাতে সমস্ত সময় সঠিকভাবে ঘটে, অন্যথায় এটি সঠিক ইভেন্ট ক্রমটি প্রেরণ করবে না, বিশেষত একটি বহু-থ্রেড প্রোগ্রামে। এটি করা হয়ে গেলে আপনি ফলাফলের ক্রমটি ঠিকঠাক মতো হ্যান্ডেল করতে পারেন যদি ব্যবহারকারী কোনও ওএস সরবরাহিত সজ্জিত জেফ্রেমের জন্য [x] বোতামটিতে ক্লিক করেন।

public void closeWindow()
{
    if(awtWindow_ != null) {
        EventQueue.invokeLater(new Runnable() {
            public void run() {
                awtWindow_.dispatchEvent(new WindowEvent(awtWindow_, WindowEvent.WINDOW_CLOSING));
            }
        });
    }
}

2

আমি এটি চেষ্টা করেছি, ফর্মউইন্ডো ক্লোজিং () ইভেন্টের জন্য আপনার নিজের কোডটি লিখুন ।

 private void formWindowClosing(java.awt.event.WindowEvent evt) {                                   
    int selectedOption = JOptionPane.showConfirmDialog(null,
            "Do you want to exit?",
            "FrameToClose",
            JOptionPane.YES_NO_OPTION);
    if (selectedOption == JOptionPane.YES_OPTION) {
        setVisible(false);
        dispose();
    } else {
        setDefaultCloseOperation(javax.swing.WindowConstants.DO_NOTHING_ON_CLOSE);
    }
}    

এটি ব্যবহারকারীকে জিজ্ঞাসা করে যে সে ফ্রেম বা অ্যাপ্লিকেশনটি প্রস্থান করতে চায় কিনা।


1

প্রশ্ন বঙ্গে যা ছিল তা সিডব্লিউ উত্তর হিসাবে পোস্ট করা।

প্রধানত ক্যামিকারের লিঙ্কটি থেকে প্রাপ্ত ফলাফলগুলি ভাগ করতে চেয়েছিল। মূলত আমাকে WindowEvent.WINDOW_CLOSINGঅ্যাপ্লিকেশন ইভেন্টের কাতারে নিক্ষেপ করতে হবে । সমাধানটি কেমন দেখাচ্ছে তার একটি সংক্ষিপ্তসার এখানে দেওয়া হয়েছে

// closing down the window makes sense as a method, so here are
// the salient parts of what happens with the JFrame extending class ..

    public class FooWindow extends JFrame {
        public FooWindow() {
            setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
            setBounds(5, 5, 400, 300);  // yeah yeah, this is an example ;P
            setVisible(true);
        }
        public void pullThePlug() {
                WindowEvent wev = new WindowEvent(this, WindowEvent.WINDOW_CLOSING);
                Toolkit.getDefaultToolkit().getSystemEventQueue().postEvent(wev);
        }
    }

// Here's how that would be employed from elsewhere -

    // someplace the window gets created ..
    FooWindow fooey = new FooWindow();
    ...
    // and someplace else, you can close it thusly
    fooey.pullThePlug();

1

আপনি যদি কোনও JFrame বন্ধ হয়ে যাওয়ার পরে আপনার অ্যাপ্লিকেশনটি সমাপ্ত না করতে চান, তবে ব্যবহার করুন: ডিফল্ট ক্লোস অফারেশন (জেফ্রেম.আইডিএসপিওলোন_ CLOSE)

এর পরিবর্তে: setDefaultCloseOperation (JFrame.EXIT_ON_CLOSE);

ডকুমেন্টেশন থেকে:

DO_NOTHING_ON_CLOSE (defined in WindowConstants): কিছু করবেন না; একটি নিবন্ধিত উইন্ডোলিস্টনার অবজেক্টের উইন্ডো সমাপ্ত পদ্ধতিতে ক্রিয়াকলাপ পরিচালনা করতে প্রোগ্রামটির প্রয়োজন।

HIDE_ON_CLOSE (defined in WindowConstants): কোনও নিবন্ধিত উইন্ডোলিস্টনার অবজেক্টকে অনুরোধ করার পরে স্বয়ংক্রিয়ভাবে ফ্রেমটি আড়াল করুন।

DISPOSE_ON_CLOSE (defined in WindowConstants): কোনও নিবন্ধিত উইন্ডোলিস্টনার অবজেক্টকে অনুরোধ করার পরে ফ্রেমটি স্বয়ংক্রিয়ভাবে লুকান এবং নিষ্পত্তি করুন।

EXIT_ON_CLOSE (defined in JFrame): সিস্টেম প্রস্থান পদ্ধতি ব্যবহার করে অ্যাপ্লিকেশন থেকে প্রস্থান করুন। এটি শুধুমাত্র অ্যাপ্লিকেশনগুলিতে ব্যবহার করুন।

এখনও কার্যকর হতে পারে: আপনি setVisible(false)যদি আবার একই ফ্রেমটি প্রদর্শন করতে চান তবে আপনি আপনার জেফ্রেমে ব্যবহার করতে পারেন । অন্যথায় dispose()নেটিভ স্ক্রিনের সমস্ত সংস্থান সরিয়ে ফেলার জন্য কল করুন

পিটার ল্যাং থেকে অনুলিপি করা

https://stackoverflow.com/a/1944474/3782247


আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.