जावा 6 में मूल विंडोज लुक एंडफेल कुछ गलत फ़ॉन्ट्स का आकार लगता है।विंडोज लुक एंडफेल फोंट को बहुत छोटा क्यों बनाता है?
टेस्ट कार्यक्रम:
import java.awt.*;
import java.awt.event.KeyEvent;
import javax.swing.*;
public class Test {
public static void main(String[] arg) throws Exception {
SwingUtilities.invokeLater(new Runnable() {
public void run() {
try {
UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName());
}
catch (Exception e) {
e.printStackTrace();
}
final JMenuBar mb = new JMenuBar();
final JMenu file = new JMenu("File");
file.setMnemonic(KeyEvent.VK_F);
mb.add(file);
final JToolBar toolbar = new JToolBar();
final JButton button = new JButton("Button");
toolbar.add(button);
final JLabel label = new JLabel("Basic Colors");
final JPanel panel = new JPanel(new BorderLayout());
panel.add(toolbar, BorderLayout.PAGE_START);
panel.add(label, BorderLayout.CENTER);
final JFrame frame = new JFrame();
frame.setJMenuBar(mb);
frame.add(panel);
frame.setTitle("Test");
frame.setSize(400,200);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setVisible(true);
}
});
}
}
आउटपुट, Vista पर एक देशी Windows ऐप के साथ तुलना में:
परीक्षण एप्लिकेशन मेनू पट्टी में पाठ का आकार सही है, वहीं के बाकी पाठ इसके आगे के मूल ऐप की तुलना में छोटा है। में ज़ूम किया गया है, तो आप देख सकते हैं कि परीक्षण अनुप्रयोग में पाठ JLabel 1px स्थानीय ऐप्लिकेशन में तुलना में कम है:
इस Windows एलएएफ में एक बग है, या हम इसे दुरुपयोग कर रहे हैं? यदि यह एक बग है, तो क्या कोई ज्ञात कामकाज है?
मेरे लिए ऐसा लगता है कि स्विंग एल एंड एफ एक अलग फ़ॉन्ट का उपयोग करता है। –
+1 अच्छी तरह से तैयार सवाल। –