java中如果把下拉菜单用鼠标选中的值添加到文本框里面?

如何设置下拉内容?
是用JAVA···不要用JS啊~~~

    需要的组件:

       下拉菜单 是    JComboBox组件

        文本框   是   JTextField组件

    设置下拉菜单的内容

    常用的主要有三种方法

    使用添加模型的方式,来添加内容

    JComboBox jcb = new JComboBox();
    jcb.setModel(new DefaultComboBoxModel<String>(new String[] {"一","二"}))

    使用数组参数的构造器,来添加内容

String[] ss = {"选项一","选项二"};
JComboBox jcb = new JComboBox(ss);

   3.  使用链表参数的构造器,来添加内容

Vector<String> ve = new Vector<String>();
ve.add("选项一");ve.add("选项二");
JComboBox jcb = new JComboBox(ve); //把单链表作为参数,来构造一个下拉菜单

    事件响应器的设置

    当鼠标选择菜单的选项后, 会触发一个事件ActionEvent,  该事件的处理代码里, 可以实现把选择的值添加到文本框.

    需要给JComboBox 添加 一个ActionListener  就能实现对事件的响应

    效果图


    参考代码如下 jdk 1.8

import java.awt.event.*;
import java.util.*;
import javax.swing.*;
import java.awt.*;

public class JCBDemo extends JFrame implements ActionListener {
private static final long serialVersionUID = 1L;
//组件的定义
private final JTextField jtf1;
private final JTextField jtf2;
private final JTextField jtf3;
private final JComboBox<String> jcb2;
private final JComboBox<String> jcb1;
private final JComboBox<String> jcb3;
public static void main(String[] args) {
new JCBDemo().setVisible(true);
}

public JCBDemo() {
setLayout(new GridLayout(3, 3, 0, 0));
//给JComboBox 添加数据的方式一 setModel的方法
JLabel jl1 = new JLabel("选择你喜欢的水果");
jcb1 = new JComboBox<String>();
jcb1.setModel(new DefaultComboBoxModel<String>(new String[] { "苹果", "鸭梨", "香蕉", "山楂", "蜜桃" }));
jtf1 = new JTextField();
jtf1.setColumns(10);
jtf1.setText((String) jcb1.getSelectedItem());//设置文本框的值
//给JComboBox 添加数据的方式二  使用带数组作为参数的构造方法
JLabel jl2 = new JLabel("选择你喜欢的电影");
String[] move = { "英雄本色", "神奇四侠", "复仇者联盟" };
jcb2 = new JComboBox<String>(move);
jcb2.addItem("星球大战");
jtf2 = new JTextField();
jtf2.setText((String) jcb2.getSelectedItem());
jtf2.setColumns(10);
//给JComboBox 添加数据的方式三  使用带Vector链表作为参数的构造方法
JLabel jl3 = new JLabel("选择你喜欢的书籍");
Vector<String> list = new Vector<String>();
list.add("货币战争");
list.add("格林童话");
jcb3 = new JComboBox<String>(list);
jtf3 = new JTextField();
jtf3.setColumns(10);
jtf3.setText((String) jcb3.getSelectedItem());

add(jl1);add(jcb1);add(jtf1);
add(jl2);add(jcb2);add(jtf2);
add(jl3);add(jcb3);add(jtf3);
jcb1.setActionCommand("1");//设置动作命令
jcb1.addActionListener(this);//设置事件响应器
jcb2.setActionCommand("2");
jcb2.addActionListener(this);
jcb3.setActionCommand("3");
jcb3.addActionListener(this);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setSize(350, 139);//设置窗口大小
setLocationRelativeTo(null);//设置窗口居中
setTitle("下拉菜单示范");
}

public void actionPerformed(ActionEvent e) {//当鼠标选择下拉菜单的值时
String comd =e.getActionCommand();//得到动作命令
if(comd.equals("1")){
jtf1.setText((String) jcb1.getSelectedItem());//设置文本框的内容
}else if(comd.equals("2")){
jtf2.setText((String) jcb2.getSelectedItem());
}else if(comd.equals("3")){
jtf3.setText((String) jcb3.getSelectedItem());
}
}
}

温馨提示:内容为网友见解,仅供参考
第1个回答  推荐于2017-11-21
你说的是c/s程序 还是b/s?
如果是c/s 程序 那么这个下拉菜单控件 肯定会有一个 事件 就是 下拉菜单选择的内容或者索引发生改变的事件,在这个事件中给文本框赋值。

如果不是这样请谅解,我对java的c/s 并不是很熟悉。

如果是b/s 的话,就用JavaScript,<select onchange="document.forms[0].txt.value=this.value"></select>

document.forms[0].txt.value 是本页面第一个表单的name为txt的元素。

祝你好运!!本回答被提问者采纳
第2个回答  2015-12-15
给下拉菜单添加一个 选中的方法 在方法里面取到下拉菜单选中的值 然后把值赋值给文本框..
第3个回答  2009-06-14
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>无标题文档</title>
<script>
function obtion(){
var obj = document.getElementById("inter");
var objDis = document.getElementById("dis"); var va = obj.value;
objDis.value = va;
}
</script>
</head>

<body>
<input type="text" name="dis" id="dis" value="获取选中的值"/>
<select name="inter" id="inter" onchange="obtion()">
<option value="武术">武术</option>
<option value="音乐" selected="selected">音乐</option>
<option value="美术">美术</option>
<option value="购物">购物</option>
</select>
</body>
</html>
第4个回答  2009-06-14
combox 吧?应该是

java中如果把下拉菜单用鼠标选中的值添加到文本框里面?
当鼠标选择菜单的选项后, 会触发一个事件ActionEvent, 该事件的处理代码里, 可以实现把选择的值添加到文本框.需要给JComboBox 添加 一个ActionListener 就能实现对事件的响应 效果图 参考代码如下 jdk 1.8 import java.awt.event.*;import java.util.*;import javax.swing.*;import java.awt.*;...

用JAVA语言,怎样在鼠标点击按钮后在文本框里显示次数?
按钮添加点击时间监听 按钮点击,次数加1,监听方法里面设置文本框的内容为次数当前值。

java 怎么实现两个文本框都用按钮输入?鼠标选中哪个文本框之后点击按钮...
如果第一个得到了焦点,a=1 然后点击了下面的数字这些,判断哪个获得了焦点,就向哪个jtextfield加数据

在java中怎样实现鼠标移动到一个标签上在旁边显示一个文本框,等鼠标移...
如果是JSP或者HTML的话可以用:onmouseover属性来添加一个函数,控制文本的显示;用onmouseout属性添加一个函数,来控制文本的隐藏;如果你是用swing组件的话,原理上也是一样的,只是具体的操作我就不是很清楚了。我没有用过swing组件,不过里面应该也有这些类似的属性的,你自己找一下。

java中鼠标右击弹出菜单怎样实现
import java.awt.MenuBar;import java.awt.event.MouseAdapter;import java.awt.event.MouseEvent;import javax.swing.JFrame;import javax.swing.JPopupMenu;\/* * java中鼠标右击弹出菜单怎样实现 *\/public class Demo {public static void main(String[] args) {final JFrame jf = new JFrame("...

JAVA中在JPanel上用鼠标监听得到X,y的值如何把每次点击的X,Y的值传 ...
专门定义一个类来存储x,和y public class MousePoint(){ Integer x; Integer y;}

Java相关:如何JTextField的文本框中实现鼠标右键粘贴?
你只要加个main方法就行了..代码:public static void main(String[] args){ JFrame frame=new JFrame("Test");MJTextField m=new MJTextField();frame.add(m);frame.setSize(200,200);frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);frame.setVisible(true);} ...

java中选择框的使用方法
Java中JTbale功能作为添加下拉选择框,在设计表格的时候有时候经常需要使用下拉选择框来提供给用户选择,分享一下这个效果的例子代码: import java.awt.Color;import java.awt.Component;import javax.swing.DefaultCellEditor;import javax.swing.JComboBox;import javax.swing.JFrame;import javax.swing.JScrollPane;import ...

如何在java中使用sikuli进行自动化测试
屏幕截图(Take screenshot):点击该按钮,进入屏幕截图状态,拖拽辅助线选取需要截取的界面元素,释放鼠标左键的同时,自动将该截图插入到编辑区中光标当前位置。使用快捷键 Ctrl+Shift+2(Command+Shift+2)也可激活截图状态,以完成对于弹出菜单、下拉框一类的控件的实时截图。该快捷键亦可通过主菜单 ...

java中,JComboBox下拉框选项事件。不同选项触发不同事件?
JComboBox jComboBox = new JComboBox(new Object[]{"选项1","选项2","选项3"});panel.add(jComboBox);jComboBox.addItemListener(new ItemListener() { Override public void itemStateChanged(ItemEvent itemEvent) { if(itemEvent.getStateChange()==1){ if(itemEvent.getItem()=="选项1"...

相似回答