كيف يمكنني جعل مربعات الحوار Joptionpane تظهر مهمة على شريط المهام؟

StackOverflow https://stackoverflow.com/questions/542844

سؤال

يحرر:

السؤال يتبع الحكم الأفقي؛ إجابتي تسبقها.


بناء على مساعدة من أوسكار رييس, ، أنا وضعت هذا الحل:

import javax.swing.JOptionPane;
import javax.swing.JFrame;

public class MyApp extends JFrame {
    public static void main(String [] args) {
        new MyApp();
    }

    public MyApp() {
        super("MyApp");
        setUndecorated(true);
        setVisible(true);
        setLocationRelativeTo(null);
        String i = JOptionPane.showInputDialog(this, "Enter your name:", getTitle(), JOptionPane.QUESTION_MESSAGE);
        if(null != i) {
            JOptionPane.showInputDialog(this, "Your name is:", getTitle(), JOptionPane.INFORMATION_MESSAGE, null, null, i.concat(i));
        }
        dispose();
    }
}

لاحظ أنني عرض إخراجي في Joptionpane.showinputdialog أيضا. وبهذه الطريقة يتم تمييز الإخراج في حقل نص حتى أتمكن من الضغط ببساطة كنترول+جيم لنسخ الإخراج إلى حافظة النظام وأصطلق خروج لرفض التطبيق.


لقد أنشأت واجهة المستخدم الرسومية تافهة لتطبيقي تافه. مطالبات طلبي لإدخال واحد مع JOptionPane.showInputDialog, ، يؤدي حساب، ثم يعرض إخراج واحد مع JOptionPane.showMessageDialog. وبعد أنا في بعض الأحيان التبديل إلى نافذة متصفح كثيفة أو أي شيء آخر لنسخ منه، ثم تريد العودة إلى مربع حوار Joptionpane الخاص بي للصق.

أريد أن أحصل على مربع الحوار Joptionpane الخاص بي ظاهرا كمهمة على شريط المهام، لذلك يمكنني التبديل إليه مثل أي برنامج قيد التشغيل تقريبا. أنا أفضل بساطة Joptionpane، بدلا من الاضطرار إلى إنشاء JFrame و FlowLayout أو أيقونة و JTextfield و JButton و ActionListener وما إلى ذلك وما إلى ذلك.

  • هل يستطيع Joptionpane أنه مهمة على شريط المهام؟
  • إذا كان الأمر كذلك، كيف يمكنني الحصول عليه لإظهار؟
  • إذا لم يكن الأمر كذلك، فهل هناك أي شيء آخر مثل بطانة واحدة JOptionPane.show[whatever]dialog()?
هل كانت مفيدة؟

المحلول

  • هل يستطيع Joptionpane أنه مهمة على شريط المهام؟

رقم

  • إذا لم يكن الأمر كذلك، فهل هناك أي شيء آخر هو بطانة واحدة مثل Joptionpane.show [أيا كان] الحوار ()؟

ليس بالضبط بطانة واحدة (ولكن بعض 6 خطوط إضافية: P)

أراهن أنك كام وضع كل هذا في طريقة utlity سهلة للغاية واتصل بها كلما احتجت مع مكالمة واحدة.

من شأن التعليمات البرمجية التالية إضافة شريط مهام لتطبيقك.

import javax.swing.JFrame;
import javax.swing.JOptionPane;

public class OptionTest { 
    public static void main ( String [] args ) { 

        JFrame frame = new JFrame("My dialog asks....");

        frame.setUndecorated( true );
        frame.setVisible( true );
        frame.setLocationRelativeTo( null );


        String message = JOptionPane.showInputDialog(frame,
            "Would this be enough?.", 
            "My dialog asks....", 
            JOptionPane.INFORMATION_MESSAGE);

        System.out.println( "Got " + message );

        frame.dispose();
    }
}

بالمناسبة في نظام التشغيل Windows Vista، يمكنني التبديل إلى OptionPane باستخدام ALT + TAB بدون أي شيء آخر (على الرغم من أنني لا أستطيع رؤيته في شريط المهام كما قلت)

نصائح أخرى

هذا السؤال هو منصة تعتمد. على نظامي، Debian Linux مع OpenBox، تظهر Joptionpanes دائما على شريط المهام. لا أستطيع منع أي jdialog من الظهور في شريط المهام.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top