هل هناك طريقة لجعل عمل JComboBox مثل تحديد HTML؟

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

  •  03-07-2019
  •  | 
  •  

سؤال

ما أحاول القيام به تقليد علامة HTML تحديد. أريد لعرض النص كخيار ولكن عندما المحدد، وأود أن استخدام قيمته.

وعلى سبيل المثال، كنت أود أن يكون على قائمة أسماء البلدان. ومع ذلك، عندما يقوم مستخدم بتحديد اليابان، أريد الحصول على مدونة اللغة لذلك البلد. لذا يرى المستخدم الذي اختاروا اليابان، ولكن قانون بلدي الحصول على "ja_JP" أو شيء من هذا.

واني اسعى الى تجنب تخزين الاسم واللغة رمز البلد في HashMap أو شيء من هذا.

هل كانت مفيدة؟

المحلول

وإنشاء كائن البلد الذي يحتوي على اسم العرض ورمز البلد. هل يمكن أن تفعل toString سريعة وقذرة وتجاوز لإظهار اسم العرض وبعد ذلك فقط استرداد رمز عندما كنت في حاجة إليها عندما يقوم المستخدم بتحديد شيء.

public class Country
{
    String display;
    String code;

    @Override
    public String toString()
    {
        return display;
    }

    public String getCode()
    {
        return code;
    }
}

واستبعد المنشئ وأنا كسول. إذا لم تكن سعيدة مع toString الأهم هل يمكن أيضا إنشاء العارض الخاص الذي يتعامل مع الأشياء البلد واستخدام شاشة عرض بدلا من ذلك من خلال جالبة الجديد.

نصائح أخرى

وتحرير: أحتاج لكتابة أسرع

.

وأنا عادة إنشاء كائن مخصص لعقد "قيمة" وتجاوز toString () لإرجاع ما ينبغي أن تظهر JComboBox. بدلا من ذلك، يمكن أن تكتب بك العارض الخلية الخاصة.

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