2
私はJTreeを使用してJavaスイングアプリケーションを持っています。
最近UHDモニターに移行しましたが、今はJTreeがうまく拡張できません。
アイコンを使用して線の高さを調整するという気持ちがありますが、これにどのように影響するかという手がかりはありません。
UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName());
が省略されている場合、新しいモニタでは判読不能なほど小さいことに注意してください。
以下のスクリーンショット/簡単なサンプルコードをご覧ください。
jtree高いDPIはスケールされません
import java.awt.BorderLayout;
import java.awt.EventQueue;
import javax.swing.JFrame;
import javax.swing.JPanel;
import javax.swing.border.EmptyBorder;
import javax.swing.JTree;
import javax.swing.UIManager;
public class JTreeTest extends JFrame
{
private JPanel contentPane;
/**
* Launch the application.
*/
public static void main(String[] args)
{
EventQueue.invokeLater(new Runnable()
{
public void run()
{
try {
// Set System L&F
UIManager.setLookAndFeel(
UIManager.getSystemLookAndFeelClassName());
JTreeTest frame = new JTreeTest();
frame.setVisible(true);
} catch (Exception e) {
e.printStackTrace();
}
}
});
}
/**
* Create the frame.
*/
public JTreeTest()
{
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setBounds(100, 100, 450, 300);
contentPane = new JPanel();
contentPane.setBorder(new EmptyBorder(5, 5, 5, 5));
contentPane.setLayout(new BorderLayout(0, 0));
setContentPane(contentPane);
JTree tree = new JTree();
contentPane.add(tree, BorderLayout.CENTER);
}
}
通常の解像度JTreeのスクリーンショット:
UHDの解像度JTreeのスクリーンショット:
ありがとうございました。