Art*_*ard 6 java swing tooltip
我有一个包含JButton和其他一些东西的JPanel,我希望整个面板都有一个工具提示.当我在JPanel上调用setToolTipText时,工具提示只出现在JPanel中的空白区域.
有没有办法在JPanel上设置工具提示,以便它适用于JPanel及其子代,或者我是否仍然坚持在所有子代上调用setToolTipText?
创建递归方法:
public static void setToolTipRecursively(JComponent c, String text) {
c.setToolTipText(text);
for (Component cc : c.getComponents())
if (cc instanceof JComponent)
setToolTipRecursively((JComponent) cc, text);
}
Run Code Online (Sandbox Code Playgroud)
完整示例:
public static void main(String[] args) {
final JFrame frame = new JFrame("Test");
frame.add(new JLabel("Testing (no tooltip here)"), BorderLayout.NORTH);
final JPanel panel = new JPanel(new GridLayout(2, 1));
panel.setBackground(Color.RED);
panel.add(new JLabel("Hello"));
panel.add(new JTextField("World!"));
setToolTipRecursively(panel, "Hello World!");
frame.add(panel, BorderLayout.CENTER);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setSize(400, 300);
frame.setVisible(true);
}
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
5348 次 |
最近记录: |