❶ 用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();//創建窗口
}
}