❶ 用java试编程设计一个下拉式菜单
效果图
❷ 求精通java的大神编写一个菜单类的程序,可以含下拉菜单,功能可以自己设计。
package test;
import java.awt.BorderLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.io.FileReader;
import java.io.FileWriter;
import java.io.IOException;
import javax.swing.JFrame;
import javax.swing.JMenu;
import javax.swing.JMenuBar;
import javax.swing.JMenuItem;
import javax.swing.jscrollPane;
import javax.swing.JTextArea;
import javax.swing.SwingUtilities;
public class MenuTester extends JFrame implements ActionListener
{
private static final long serialVersionUID = 1L;
private static final String FILE = "d:/1.txt"山斗;
JTextArea textArea;
JScrollPane scrollPane;
public MenuTester ()
{
setTitle ("MenuTester");
setLayout (new BorderLayout ());
JMenuBar menuBar = new JMenuBar ();
JMenu[] menu = new JMenu[] { new JMenu ("文件弊旦"), new JMenu ("编辑") };
JMenuItem[] menuItem1 = new JMenuItem[] { new JMenuItem ("新建"逗卜磨), new JMenuItem ("打开"), new JMenuItem ("保存"), new JMenuItem ("关闭") };
JMenuItem[] menuItem2 = new JMenuItem[] { new JMenuItem ("复制"), new JMenuItem ("粘贴"), new JMenuItem ("剪切") };
for ( int i = 0; i < menu.length; i++ )
{
menuBar.add (menu[i]);
}
for ( int i = 0; i < menuItem1.length; i++ )
{
menu[0].add (menuItem1[i]);
}
for ( int i = 0; i < menuItem2.length; i++ )
{
menu[1].add (menuItem2[i]);
}
menuItem1[0].addActionListener (this);
menuItem1[1].addActionListener (this);
menuItem1[2].addActionListener (this);
menuItem1[3].addActionListener (this);
setJMenuBar (menuBar);
textArea = new JTextArea ();
scrollPane = new JScrollPane (textArea);
scrollPane.setVisible (false);
add (scrollPane, BorderLayout.CENTER);
setResizable (false);
setSize (800, 600);
setLocationRelativeTo (null);
setDefaultCloseOperation (JFrame.EXIT_ON_CLOSE);
setVisible (true);
}
public static void main ( String[] args )
{
SwingUtilities.invokeLater (new Runnable ()
{
@Override
public void run ()
{
new MenuTester ();
}
});
}
@Override
public void actionPerformed ( ActionEvent e )
{
String command = e.getActionCommand ();
if ("新建".equals (command))
{
scrollPane.setVisible (true);
validate ();
}
else if ("关闭".equals (command))
{
scrollPane.setVisible (false);
textArea.setText ("");
validate ();
}
else if ("打开".equals (command))
{
scrollPane.setVisible (true);
validate ();
try
{
FileReader fr = new FileReader (FILE);
char[] cs = new char[1];
while (-1 != ( fr.read (cs) ))
{
textArea.append (new String (cs));
}
fr.close ();
}
catch (Exception e1)
{
e1.printStackTrace ();
}
}
else if ("保存".equals (command))
{
try
{
FileWriter fw = new FileWriter (FILE);
fw.write (textArea.getText ());
fw.flush ();
fw.close ();
}
catch (IOException e1)
{
e1.printStackTrace ();
}
}
}
}
❸ java的awt下拉菜单怎样更改Menu当中的显示字体的大小请大神指教
呵呵,这个不解释,给代码吧,用swing控件就行,不要和awt件混用
importjava.awt.Button;
importjava.awt.Color;
importjava.awt.Font;
importjavax.swing.JFrame;
importjavax.swing.JMenu;
importjavax.swing.JMenuBar;
importjavax.swing.JMenuItem;
publicclassMain
{
publicMain()
{
JFrameframe=newJFrame("新建窗体");
frame.setSize(300,200);
JMenuBarmb=newJMenuBar();
Fontfont=newFont("微软雅黑",Font.BOLD,24);
Buttonbutton=newButton("颜色");
button.setFont(font);
JMenume=newJMenu("颜色");
me.setFont(font);
JMenuItemx=newJMenuItem("红色");
x.setForeground(Color.RED);
JMenuItemy=newJMenuItem("橙色");
y.setForeground(Color.ORANGE);
JMenuItemz=newJMenuItem("绿色");
z.setForeground(Color.BLUE);
frame.setJMenuBar(mb);
mb.add(me);
me.add(x);
me.add(y);
me.add(z);
frame.setVisible(true);
frame.setDefaultCloseOperation(3);
}
publicstaticvoidmain(Stringargs[])
{
newMain();
}
}
❹ java中怎么实现多个下拉菜单的动态关联
1,所皮雀谓级联下拉菜单就是动态的下拉菜单,
当第一级选中某一个选项是,
第二级会跟着第一级的变化而变化,
比如:当“学院”这一栏选择“信息学院”猜肆那么“专业”这一栏穗握轿只会出现属于信息学院的专业。
2,级联下拉菜单的实现是运用itemStateChanged(ItemEvent )方法实现,首先在下拉菜单上注册ItemListener监视器,当下拉菜单选中时触发itemStateChanged(ItemEvent )事件重新给下一级下拉菜单赋值。
public void itemStateChanged(ItemEvent e) {
if(e.getSource() == xueyuan) { // 当点击学院下拉框时
try {
Statement stat2 = con.createStatement();
String sql = "select D_ID from xueyuanin WHERE
D_NAME='"+e.getItem()+"'"; // 获取该学院的代号
ResultSet rs = stat2.executeQuery(sql);
rs.next();
❺ JAVA Swing 如何监听JMenuItem下拉菜单,实现相应功能
第一源个问题:使用veiwMenuItem.addActionListener()方法添加监听器。具体使用可以查看JDK API
第二个问题,一时想到两种实现方法
1、你要知道,JPanel不单是一个组件,更是一个组件容器,所以你可以往其中添加一个表格组件,而这个表格组件则将你的查询结果显示出来
2、如果你不希望使用其他组件了的话,倒也可以重载paint()方法,直接将你要显示的信息“绘”出来。例如:
public class DisplayPanel extends JPanel{
public void pain(Graphics g){
super.paint(g);
g.drawString(student.getName());
g.drawString(student.getNumber());
.... ....
}
}
然后将这个Panel添加到你原来的位置即可。
❻ java中如果把下拉菜单用鼠标选中的值添加到文本框里面
需要的组件:
下拉菜单 是 JComboBox组件
文本框 是 JTextField组件
设置下拉菜单的内容
常用的主要有三种方法
使用添加模型的方式,来添加内容
JComboBoxjcb=newJComboBox();
jcb.setModel(newDefaultComboBoxModel<String>(newString[]{"一","二"}))
使用数组参数的构造器,来添加内容
String[]ss={"选项一","选项二"};
JComboBoxjcb=newJComboBox(ss);
3. 使用链表参数的构造器,来添加内容
Vector<String>ve=newVector<String>();
ve.add("选项一");ve.add("选项二");
JComboBoxjcb=newJComboBox(ve);//把单链表作为参数,来构造一个下拉菜单
事件响应器的设置
当鼠标选择菜单的选项后, 会触发一个事件ActionEvent, 该事件的处理代码里, 可以实现把选择的值添加到文本框.
需要给JComboBox 添加 一个ActionListener 就能实现对事件的响应
效果图
importjava.awt.event.*;
importjava.util.*;
importjavax.swing.*;
importjava.awt.*;
{
=1L;
//组件的定义
privatefinalJTextFieldjtf1;
privatefinalJTextFieldjtf2;
privatefinalJTextFieldjtf3;
privatefinalJComboBox<String>jcb2;
privatefinalJComboBox<String>jcb1;
privatefinalJComboBox<String>jcb3;
publicstaticvoidmain(String[]args){
newJCBDemo().setVisible(true);
}
publicJCBDemo(){
setLayout(newGridLayout(3,3,0,0));
//给JComboBox添加数据的方式一setModel的方法
JLabeljl1=newJLabel("选择你喜欢的水果");
jcb1=newJComboBox<String>();
jcb1.setModel(newDefaultComboBoxModel<String>(newString[]{"苹果","鸭梨","香蕉","山楂","蜜桃"}));
jtf1=newJTextField();
jtf1.setColumns(10);
jtf1.setText((String)jcb1.getSelectedItem());//设置文本框的值
//给JComboBox添加数据的方式二使用带数组作为参数的构造方法
JLabeljl2=newJLabel("选择你喜欢的电影");
String[]move={"英雄本色","神奇四侠","复仇者联盟"};
jcb2=newJComboBox<String>(move);
jcb2.addItem("星球大战");
jtf2=newJTextField();
jtf2.setText((String)jcb2.getSelectedItem());
jtf2.setColumns(10);
//给JComboBox添加数据的方式三使用带Vector链表作为参数的构造方法
JLabeljl3=newJLabel("选择你喜欢的书籍");
Vector<String>list=newVector<String>();
list.add("货币战争");
list.add("格林童话");
jcb3=newJComboBox<String>(list);
jtf3=newJTextField();
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("下拉菜单示范");
}
publicvoidactionPerformed(ActionEvente){//当鼠标选择下拉菜单的值时
Stringcomd=e.getActionCommand();//得到动作命令
if(comd.equals("1")){
jtf1.setText((String)jcb1.getSelectedItem());//设置文本框的内容
}elseif(comd.equals("2")){
jtf2.setText((String)jcb2.getSelectedItem());
}elseif(comd.equals("3")){
jtf3.setText((String)jcb3.getSelectedItem());
}
}
}
❼ java中下拉菜单连接数据库
我的采用的漏贺是javabena+jsp
一个javabean
public ArrayList selectCourseInfo()throws Exception {//下拉框显察神示课程信息
ArrayList list = new ArrayList();
try {
db.open();
ResultSet rs = db.select("select * from CourseInfo");
while (rs.next()) {
list.add(new CourseInfo(rs.getInt(1), rs.getString(2),rs.getString(3)));
}
} catch (Exception e) {
e.printStackTrace();
} finally {
db.close();
}
return list;
}
然后在jsp中调用
<tr><td>课 程:<select name="course">
<%try{
ArrayList list=m.selectCourseInfo();
if(list.isEmpty()){
out.println("没有数据显示");
}
for(int i=0;i<list.size();i++){
CourseInfo c=(CourseInfo)list.get(i);%>
<option><%=c.getName()%></option>
<%}}
catch(Exception e){}
%></select>
<败搜亏/td></tr>
这样就可以动态的显示了
❽ java JComBox下拉菜单返回值问题
String[] city1 = new String[20];
JComboBox JC1 = new JComboBox();
for (int i = 0; i < city1.length; i++) {
JC1.addItem(city1[i]);
}
这迹宽样添加完下拉姿答亮选项以后举梁,你再读取选中的项目试一下。
❾ java如何实现点击按钮弹出下来菜单
这个不是下拉菜单..这个是哗和一个JpopupMenu..在神芦缺那个按钮上注册action ,当点击的时候弹出一个popupMenu 就是这游辩样
❿ 如何用java实现下拉菜单
//核心代码
String[]sg={"苹果","香蕉","樱桃","山楂"};
JComboBox<String>jcb=newJComboBox<String>(sg);
完整代码
importjava.awt.*;
importjavax.swing.*;
{
publicMFrame(){
String[]sg={"苹果","香蕉","樱桃","山楂"};
JComboBox<String>jcb=newJComboBox<String>(sg);
add(jcb);
setLayout(newFlowLayout());//把JFrame设置成流式布局
setTitle("测试");//设置窗口标题
setSize(220,100);//设置窗口大小
setLocationRelativeTo(null);//设置窗口居中
setDefaultCloseOperation(EXIT_ON_CLOSE);//设置点击关闭退出jvm虚拟机
setVisible(true);//设置窗口可见
}
publicstaticvoidmain(String[]args){
newMFrame();//创建窗口
}
}