java下拉菜單,java下拉菜單欄

本文目錄一覽:

如何用java實現下拉菜單

//核心代碼

String[] sg= {“蘋果”,”香蕉”,”櫻桃”,”山楂”};

JComboBoxString jcb = new JComboBoxString(sg);

完整代碼

import java.awt.*;

import javax.swing.*;

public class MFrame extends JFrame{

public MFrame() {

String[] sg= {“蘋果”,”香蕉”,”櫻桃”,”山楂”};

JComboBoxString jcb = new JComboBoxString(sg);

add(jcb);

setLayout(new FlowLayout());//把JFrame設置成流式布局

setTitle(“測試”);//設置窗口標題

setSize(220, 100);//設置窗口大小

setLocationRelativeTo(null);//設置窗口居中

setDefaultCloseOperation(EXIT_ON_CLOSE);//設置點擊關閉退出jvm虛擬機

setVisible(true);//設置窗口可見

}

public static void main(String[] args) {

new MFrame();//創建窗口

}

}

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中如果把下拉菜單用鼠標選中的值添加到文本框裡面?

需要的組件:

 下拉菜單 是    JComboBox組件

文本框   是   JTextField組件

設置下拉菜單的內容

常用的主要有三種方法

使用添加模型的方式,來添加內容

JComboBox jcb = new JComboBox();

jcb.setModel(new DefaultComboBoxModelString(new String[] {“一”,”二”}))

使用數組參數的構造器,來添加內容

String[] ss = {“選項一”,”選項二”};

JComboBox jcb = new JComboBox(ss);

 3.  使用鏈表參數的構造器,來添加內容

VectorString ve = new VectorString();

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 JComboBoxString jcb2;

private final JComboBoxString jcb1;

private final JComboBoxString 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 JComboBoxString();

jcb1.setModel(new DefaultComboBoxModelString(new String[] { “蘋果”, “鴨梨”, “香蕉”, “山楂”, “蜜桃” }));

jtf1 = new JTextField();

jtf1.setColumns(10);

jtf1.setText((String) jcb1.getSelectedItem());//設置文本框的值

//給JComboBox 添加數據的方式二  使用帶數組作為參數的構造方法

JLabel jl2 = new JLabel(“選擇你喜歡的電影”);

String[] move = { “英雄本色”, “神奇四俠”, “復仇者聯盟” };

jcb2 = new JComboBoxString(move);

jcb2.addItem(“星球大戰”);

jtf2 = new JTextField();

jtf2.setText((String) jcb2.getSelectedItem());

jtf2.setColumns(10);

//給JComboBox 添加數據的方式三  使用帶Vector鏈表作為參數的構造方法

JLabel jl3 = new JLabel(“選擇你喜歡的書籍”);

VectorString list = new VectorString();

list.add(“貨幣戰爭”);

list.add(“格林童話”);

jcb3 = new JComboBoxString(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());

}

}

}

JAVA,如何使下拉菜單被點擊後觸發事件

你可以給大菜單一個BOOL

bL變量,再給要選擇的小菜單一個BOOL

bs變量,

如果bl

==

TRUE

bs

==

TRUE,那就是點擊了,如果bl

==

TRUE

bs

==

FALSE

,就是沒有點擊。

或者你試試這個:給想監視的菜單添加ON_UPDATE_COMMAND_UI命令,如果它被點擊了,則會有一些操作在這裡執行

原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-hant/n/276104.html

(0)
打賞 微信掃一掃 微信掃一掃 支付寶掃一掃 支付寶掃一掃
小藍的頭像小藍
上一篇 2024-12-17 19:38
下一篇 2024-12-17 19:38

相關推薦

  • Java JsonPath 效率優化指南

    本篇文章將深入探討Java JsonPath的效率問題,並提供一些優化方案。 一、JsonPath 簡介 JsonPath是一個可用於從JSON數據中獲取信息的庫。它提供了一種DS…

    編程 2025-04-29
  • java client.getacsresponse 編譯報錯解決方法

    java client.getacsresponse 編譯報錯是Java編程過程中常見的錯誤,常見的原因是代碼的語法錯誤、類庫依賴問題和編譯環境的配置問題。下面將從多個方面進行分析…

    編程 2025-04-29
  • Java騰訊雲音視頻對接

    本文旨在從多個方面詳細闡述Java騰訊雲音視頻對接,提供完整的代碼示例。 一、騰訊雲音視頻介紹 騰訊雲音視頻服務(Cloud Tencent Real-Time Communica…

    編程 2025-04-29
  • Java Bean加載過程

    Java Bean加載過程涉及到類加載器、反射機制和Java虛擬機的執行過程。在本文中,將從這三個方面詳細闡述Java Bean加載的過程。 一、類加載器 類加載器是Java虛擬機…

    編程 2025-04-29
  • Java Milvus SearchParam withoutFields用法介紹

    本文將詳細介紹Java Milvus SearchParam withoutFields的相關知識和用法。 一、什麼是Java Milvus SearchParam without…

    編程 2025-04-29
  • Java 8中某一周的周一

    Java 8是Java語言中的一個版本,於2014年3月18日發布。本文將從多個方面對Java 8中某一周的周一進行詳細的闡述。 一、數組處理 Java 8新特性之一是Stream…

    編程 2025-04-29
  • Java判斷字符串是否存在多個

    本文將從以下幾個方面詳細闡述如何使用Java判斷一個字符串中是否存在多個指定字符: 一、字符串遍歷 字符串是Java編程中非常重要的一種數據類型。要判斷字符串中是否存在多個指定字符…

    編程 2025-04-29
  • VSCode為什麼無法運行Java

    解答:VSCode無法運行Java是因為默認情況下,VSCode並沒有集成Java運行環境,需要手動添加Java運行環境或安裝相關插件才能實現Java代碼的編寫、調試和運行。 一、…

    編程 2025-04-29
  • Java任務下發回滾系統的設計與實現

    本文將介紹一個Java任務下發回滾系統的設計與實現。該系統可以用於執行複雜的任務,包括可回滾的任務,及時恢復任務失敗前的狀態。系統使用Java語言進行開發,可以支持多種類型的任務。…

    編程 2025-04-29
  • Java 8 Group By 會影響排序嗎?

    是的,Java 8中的Group By會對排序產生影響。本文將從多個方面探討Group By對排序的影響。 一、Group By的概述 Group By是SQL中的一種常見操作,它…

    編程 2025-04-29

發表回復

登錄後才能評論