
首先用Eclipse设置好界面
2
设计出来的运行界面如下图:
3
当选中树中的某个节点时,节点值设置到了文本框中, 实现效果如下:
4
主要功能代码如下:
END
全部功能代码
import javaawtEventQueue;
import javaxswingJFrame;
import javaxswingJPanel;
import javaxswingJTree;import javaxswingborderEmptyBorder;
import javaxswingeventTreeSelectionEvent;
import javaxswingeventTreeSelectionListener;
import javaxswingtreeDefaultMutableTreeNode;
import javaxswingJScrollPane;
import javaxswingJTextField;
public class AppDemo extends JFrame {
private JPanel contentPane;
private JTextField textField;
public static void main(String[] args) {
EventQueueinvokeLater(new Runnable() {
public void run() {
try {
AppDemo frame = new AppDemo();
framesetVisible(true);
} catch (Exception e) {
eprintStackTrace();
}
}
});
}
public AppDemo() {
setDefaultCloseOperation(JFrameEXIT_ON_CLOSE);
setBounds(100, 100, 450, 300);
setTitle("测试");
contentPane = new JPanel();
contentPanesetBorder(new EmptyBorder(5, 5, 5, 5));
setContentPane(contentPane);
contentPanesetLayout(null);
JScrollPane scrollPane = new JScrollPane();
scrollPanesetBounds(30, 20, 196, 217);
contentPaneadd(scrollPane);
final JTree tree = new JTree();
scrollPanesetViewportView(tree); textField = new JTextField();
textFieldsetBounds(252, 35, 172, 27);
contentPaneadd(textField);
treeaddTreeSelectionListener(new TreeSelectionListener() {
public void valueChanged(TreeSelectionEvent e) {
DefaultMutableTreeNode note = (DefaultMutableTreeNode) treegetLastSelectedPathComponent();
String name = notetoString();//获得这个结点的名称
textFieldsetText(name);
}
});
}
}
framesetContentPane(jp);是把jp设置为内容面板。
framegetContentPaneadd(jp,BorderLayoutCENTER);是获取默认的内容面板。
你好!很高兴为你回答问题。
首先,请原谅我指出你的错误。
错误一:int a[] =IntegerparseInt(jtagetText());
错处:从jta获取字符串后,转换为整数,乃1个数,用数组存放可以,但不能像你这样写,你这样写是将一个整形数组初始化为一个整数。所以错。。。
错误二:jtfappend(StringvalueOf(max));
错处:JTextField没有append方法,无中生有。所以错。。。
错误三:思路错
错处:将文本域中获取的几个数字,不加处理则提取其中数字作为整数数组,是不行的
修正如下:(在文本框中输入几个数字,请用空格隔开,有问题请追问)
import javaxswing;
import javaawt;
import javaawtevent;
public class Exam3_7 {
public static void main(String[] args) {
FrameText ft = new FrameText();
ftsetVisible(true);
}
}
class FrameText extends JFrame implements ActionListener {
JTextField jtf;
JTextArea jta;
JButton jbt, jbt1;
FrameText() {
super("输出最大数和最小数的程序");
Container con = getContentPane();
consetLayout(new FlowLayout());
jta = new JTextArea("", 5, 10);
jtf = new JTextField(5);
jbt = new JButton("获取最大数");
jbt1 = new JButton("获取最小数");
jbtaddActionListener(this);
jbt1addActionListener(this);
conadd(jta);
conadd(jtf);
conadd(jbt);
conadd(jbt1);
setSize(300, 300);
}
public void actionPerformed(ActionEvent e) {
String[] input = jtagetText()split(" ");
int[] a = new int[inputlength];
for (int i = 0; i < inputlength; i++) {
a[i] = IntegerparseInt(input[i]);
}
if (egetSource() == jbt) {
int max = a[0];
for (int j = 1; j < alength; j++) {
if (a[j] > max) {
max = a[j];
}
}
jtfsetText(StringvalueOf(max));
}
if (egetSource() == jbt1) {
int min = a[0];
for (int j = 1; j < alength; j++) {
if (a[j] < min) {
min = a[j];
}
}
jtfsetText(StringvalueOf(min));
}
}
}
以上就是关于Java Swing JTree怎么获取选中节点值全部的内容,包括:Java Swing JTree怎么获取选中节点值、Swing,创建一个JFrame对象JF与JPanel对象Jp,调用JF.setContentPa、写了一个java swing的飞机大战,但是碰撞检测获取坐标的地方出现了错误,求大神帮忙等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)