جافا واجهة المستخدم الرسومية إعادة رسم) مشكلة (؟
-
21-08-2019 - |
سؤال
ولدي JFrame. يحتوي هذا JFrame على JButton. I انقر يتم إنشاء JButton و 10 JTextFields.
المشكلة: لا استطيع ان ارى لهم حتى "I فرض إعادة رسم ()" عن طريق تغيير حجم النافذة. ثم تفعل سوى أرى JTextFields بإنشائه.
وCODE:
JPanel points = new JPanel();
//Creating the JTextFields:
for (int i=0; i<10; i++) {
JTextField textField = new JTextField();
points.add(textField);
}
repaint();
this.repaint();
super.repaint();
points.repaint();
وشكرا لكم - بعد points.validate للحلقة، وأنا فقط ودعا () وانها عملت ...
المحلول
Container.add
مستندات API sayeth:
ملحوظة: إذا تم إضافة عنصر إلى حاوية التي تم عرضها، يجب استدعاء في ذلك التحقق من صحة حاوية لعرض الجديد مكون. إذا مكونات متعددة هي يجري المضافة، يمكنك تحسين الكفاءة من خلال الدعوة تحقق فقط مرة واحدة، بعد كل مكونات لها أضيفت.
اقتباس فقرة> وانها غامضة وغير ذكي جدا، ولكن من القواعد. قد يكون من الأفضل أن يدعو JComponent.revalidate
لا تنتمي إلى StackOverflow