java里的choice框里的值在哪儿填写啊?

Python044

java里的choice框里的值在哪儿填写啊?,第1张

可以在构造的时候,直接add(...),也可以addItem()

还可以在显示出来后,在动态往里面添加

参考代码如下

import java.awt.*

import java.awt.event.*

import javax.swing.*

public class ChoiceDemo extends JFrame implements ActionListener{

Choice ch

JTextField jtf 

JButton jb

public ChoiceDemo() {

ch = new Choice()

ch.add("选择一")//Choice添加值的第一方法

ch.add("选择二")

ch.addItem("选择三")//Choice 添加值的第二种方法(已经过时的方法,推荐使用第一种方法)

add(ch)

jtf =new JTextField(8)

add(jtf)

jb = new JButton("文本框内容添加到choice框")

jb.addActionListener(this)

add(jb)

setLayout(new FlowLayout())

setSize(450, 120)//大小

setDefaultCloseOperation(EXIT_ON_CLOSE)//点击关闭按钮时退出程序

setLocationRelativeTo(null)//居中

setVisible(true)//可见

}

public static void main(String[] args) {

new ChoiceDemo()

}

@Override

public void actionPerformed(ActionEvent e) {

if(e.getSource()==jb){

ch.add(jtf.getText())//继续动态添加值, 把文本框的内容添加到choice里

ch.select(ch.getItemCount()-1)//选中Choice里最后一个值

}

}

}

Choice是awt里面的内容,会有中文乱码,可以用JComboBox代替,就不会有乱码了如果非要用这个就要设置虚拟机参数,右键代码页选择运行配置,vm里面填入-Dfile.encoding=gbk

用Choice 的getSelectedItem()方法获取它的值,用add(String)方法赋值。例子程序如下:

import java.awt.Choice

import java.awt.event.ItemEvent

import java.awt.event.ItemListener

import javax.swing.JFrame

import javax.swing.JPanel

public class R extends JFrame implements ItemListener{

Choice ch1=new Choice()

R(){

ch1.add("1")

ch1.add("2")

ch1.add("3")

ch1.add("4")

ch1.add("5")

ch1.addItemListener(this)

JPanel jp=new JPanel()

jp.add(ch1)

add(jp)

setSize(300, 300)

setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE)

setVisible(true)

}

public static void main (String [] args){

new R()

}

public void itemStateChanged(ItemEvent ie) {

if(ie.getSource()==ch1){

Choice temp=(Choice)ie.getSource()

System.out.println(temp.getSelectedItem())

}

}

}