在Java中有一种很好的方法可以为输入对话框的文本字段设置工具提示吗?
例如:
String input = JOptionPane.showInputDialog("Enter input:");
是否也可以为此文本字段选择右键粘贴选项?
提前谢谢!
答案 0 :(得分:2)
我认为通过该静态方法添加工具提示是不可能的。我建议你创建一个自己的JOptionPane实例,找到JTextField并设置它的工具提示。
public class Main {
public static List<Component> getAllComponents(final Container c) {
Component[] comps = c.getComponents();
List<Component> compList = new ArrayList<Component>();
for (Component comp : comps) {
compList.add(comp);
if (comp instanceof Container)
compList.addAll(getAllComponents((Container) comp));
}
return compList;
}
public static void main(String[] args) {
JOptionPane optionPane = new JOptionPane();
optionPane.setMessage("What's your name?");
optionPane.setMessageType(JOptionPane.QUESTION_MESSAGE);
optionPane.setWantsInput(true);
JDialog dialog = optionPane.createDialog("Simple Question");
for (Component c : getAllComponents(dialog)) {
if (c instanceof JTextField) {
c.setToolTipText("I'm a tooltip!");
}
}
dialog.setVisible(true);
dialog.dispose();
}
}
默认情况下,右键单击并粘贴。