欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Java+swing實現(xiàn)抖音上的表白程序詳解

 更新時間:2022年06月24日 16:07:51   作者:SSS4362  
這篇文章主要為大家詳細介紹了如何利用Java?swing實現(xiàn)抖音上的表白程序,文中的示例代碼講解詳細,感興趣的小伙伴可以跟隨小編一起學習一下

帶你手把手,用 java swing實現(xiàn)抖音上的表白程序

1.準備工作

a.需要下載一個帶著swing插件的eclipse

b.需要配置好JDK

c.創(chuàng)建一個JFrame的項目(如下圖所示的步驟)

d.把資源文件放入與src所在的那個目錄

步驟如下:

1.先復制資源文件

2.粘貼文件

3.把jar文件放入Referenced Libraries文件夾下

? 這第3步的具體操作如何所示

那么如何判斷添加是否成功呢?

解答:看Referenced Libraries下面是否出現(xiàn)了剛剛build path的

兩個文件,若出現(xiàn)了,則代表添加成功(成功的視圖如下所示:)

e.design界面和source界面主要是干嘛的?

source界面用于寫源代碼,主要是用于寫觸發(fā)按鍵某一事件,需要進行簡單的邏輯判斷

design界面是通過可視化界面來幫我們進行界面的基本設計,直接拖拽即可,不用書寫那些定義、基本屬性的賦值這類的java代碼了

2.界面窗體的設計與實現(xiàn)

整體的按鈕的布局應該如下圖所示

實現(xiàn)過程如下:

? a.對窗體進行操作

//設置窗體關閉模式 exit-退出程序 do_nothing退出沒有任何操作
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
//設置窗體的大小和坐標 x y  寬度 高度
setBounds(100, 100, 584, 439);
//居中顯示
setLocationRelativeTo(null);
//設置窗體不可拖拽
setResizable(false);
//設置窗體的圖標
setIconImage(new ImageIcon("love.png").getImage());

b.在design界面.根據(jù)剛剛的布局分布圖,把按鍵移動到合適位置

c.把gif圖片設置為相應為相應按鈕的圖標

lblNewLabel.setIcon(newImageIcon("E:\\Ueclipseworkspace\\love\\gfriend.gif"));

d.對剩下的組件進行顏色的設置

//以button按鈕為例,進行顏色的設置
//setforeground是設置控件里面的字體顏色
btnNewButton.setForeground(Color.WHITE);
//setbackground是設置控件里面的背景顏色
btnNewButton.setBackground(Color.PINK);
//setforeground是設置控件里面字體類型以及字體大小
btnNewButton.setFont(new Font("微軟雅黑", Font.BOLD, 15));

3.對按鈕加上監(jiān)聽事件

3.1 對"好的"這個按鈕加上鼠標點擊事件

3.1.1 在design界面對"好的"按鈕添加鼠標點擊事件

3.1.2 跳轉到resource界面后,對鼠標點擊事件加上具體操作

//鼠標點擊后就會彈出提示
FrameUtil.msg("好的,老婆我就知道你會同意的");
//結束程序
System.exit(0);

3.2 對"滾"這個按鈕加上鼠標進入事件

3.2.1 在design界面對"滾"按鈕添加鼠標進入事件

3.2.2 跳轉到resource界面后,對鼠標進入事件加上具體操作

//彈出信息框,不斷的挽留,不允許它退出程序
FrameUtil.msg("老婆大人,原諒我好嗎?");
FrameUtil.msg("我錯了,再也不敢把錢不上交了");

3.3 對"滾"這個按鈕加上鼠標點擊事件(點中隨機位置了)

3.3.1 在design界面對"滾"按鈕添加鼠標點擊事件

3.3.2 跳轉到resource界面后,對鼠標點擊事件加上具體操作

//當用戶點擊到滾按鈕的隨機位置時,也要進行一波挽留操作,不允許拒絕
//彈窗彈出挽留語句
FrameUtil.msg("老婆大人,原諒我好嗎?");
FrameUtil.msg("我錯了,再也不敢把錢不上交了");

4.設置滾按鈕的層級為最上面

無論怎么移動,都是最上層

5.為界面添加一首背景音樂

//前提:需要把他人寫好的資源包build path到自己的項目中
//需要在窗體可見之前進行設置
FrameUtil.playMusic("嫁給我.mp3");
//當這首歌的路徑和src文件夾同級別時,這樣寫就可以了
//這個放的位置在方法體外面

6.源代碼

package demo;

import java.awt.BorderLayout;
import java.awt.EventQueue;

import javax.swing.JFrame;
import javax.swing.JPanel;
import javax.swing.border.EmptyBorder;

import com.frame.util.FrameUtil;

import javax.swing.JLabel;
import javax.swing.ImageIcon;
import java.awt.Color;
import java.awt.Font;
import javax.swing.JButton;
import java.awt.event.ActionListener;
import java.awt.event.ActionEvent;
import java.awt.event.MouseAdapter;
import java.awt.event.MouseEvent;
import java.util.Random;

public class Love extends JFrame {

	private JPanel contentPane;

	/**
	 * Launch the application.
	 */
	public static void main(String[] args) {
		EventQueue.invokeLater(new Runnable() {
			public void run() {
				try {
					Love frame = new Love();
					//設置窗體不可見
					
//					FrameUtil.playMusic("嫁給我.mp3");
					frame.setVisible(true);
					
				} catch (Exception e) {
					e.printStackTrace();
				}
			}
		});
		
		FrameUtil.playMusic("嫁給我.mp3");
	}

	/**
	 * Create the frame.
	 */
	public Love() {
		//設置窗體的大小
		setTitle("\u9ED1\u51E4\u68A8");
		//設置窗體關閉模式 exit-退出程序 do_nothing退出沒有任何操作
		setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
		//設置窗體的大小和坐標 x y  寬度 高度
		setBounds(100, 100, 584, 439);
		//劇中顯示
		setLocationRelativeTo(null);
		//設置窗體不可拖拽
		setResizable(false);
		//設置窗體的圖標
		setIconImage(new ImageIcon("love.png").getImage());
		contentPane = new JPanel();
		contentPane.setBorder(new EmptyBorder(5, 5, 5, 5));
		setContentPane(contentPane);
		contentPane.setLayout(null);
		
		JButton button = new JButton("\u6EDA");
		
			button.setForeground(Color.WHITE);
			button.setFont(new Font("微軟雅黑", Font.BOLD, 15));
			button.setBackground(Color.PINK);
			button.setBounds(396, 273, 113, 27);
			button.addMouseListener(new MouseAdapter() {
				@Override
				public void mouseEntered(MouseEvent arg0) {
					Random random=new Random();
					int x=random.nextInt(480);
					int y=random.nextInt(380);
					button.setBounds(x, y, 113, 27);
				}
				@Override
				public void mouseClicked(MouseEvent e) {
					FrameUtil.msg("老婆大人,原諒我好嗎?");
					FrameUtil.msg("我錯了,再也不敢把錢不上交了");
				}
			});
			contentPane.add(button);
		
		JLabel lblNewLabel = new JLabel("New label");
		lblNewLabel.setIcon(new ImageIcon("E:\\Ueclipse-workspace\\love\\gfriend.gif"));
		lblNewLabel.setBounds(14, 40, 200, 200);
		contentPane.add(lblNewLabel);
		
		JLabel lblNewLabel_1 = new JLabel("\u5C0F\u59D0\u59D0\u6211\u559C\u6B22\u4F60\u5F88\u4E45\u4E86");
		lblNewLabel_1.setFont(new Font("微軟雅黑", Font.BOLD, 20));
		lblNewLabel_1.setForeground(Color.PINK);
		lblNewLabel_1.setBounds(269, 57, 219, 73);
		contentPane.add(lblNewLabel_1);
		
		JLabel label = new JLabel("\u505A\u6211\u5973\u670B\u53CB\u597D\u5417?");
		label.setForeground(Color.RED);
		label.setFont(new Font("微軟雅黑", Font.BOLD, 20));
		label.setBounds(269, 167, 219, 73);
		contentPane.add(label);
		
		JButton btnNewButton = new JButton("\u597D\u7684");
		btnNewButton.addMouseListener(new MouseAdapter() {
			@Override
			public void mouseClicked(MouseEvent arg0) {
				//JOptionPane.showMessageDialog(null,"我的");
				FrameUtil.msg("好的,老婆我就知道你會同意的");
				System.exit(0);
			}
		});
		btnNewButton.setForeground(Color.WHITE);
		btnNewButton.setBackground(Color.PINK);
		btnNewButton.setFont(new Font("微軟雅黑", Font.BOLD, 15));
		btnNewButton.setBounds(254, 272, 113, 27);
		contentPane.add(btnNewButton);
	}
}

以上就是Java+swing實現(xiàn)抖音上的表白程序詳解的詳細內(nèi)容,更多關于Java swing表白程序的資料請關注腳本之家其它相關文章!

相關文章

  • 手動模擬JDK動態(tài)代理的方法

    手動模擬JDK動態(tài)代理的方法

    這篇文章主要介紹了手動模擬JDK動態(tài)代理的方法,幫助大家更好的了解和學習Java 代理的相關知識,感興趣的朋友可以了解下
    2020-11-11
  • 關于@RequestParam的使用所遇到的404問題

    關于@RequestParam的使用所遇到的404問題

    這篇文章主要介紹了關于@RequestParam的使用所遇到的404問題,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2021-08-08
  • java開發(fā)WMS倉庫商品預警需求示例解析

    java開發(fā)WMS倉庫商品預警需求示例解析

    這篇文章主要為大家介紹了java開發(fā)WMS倉庫商品預警需求示例解析,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2022-04-04
  • Java?SpringBoot整合shiro-spring-boot-starterqi項目報錯解決

    Java?SpringBoot整合shiro-spring-boot-starterqi項目報錯解決

    這篇文章主要介紹了Java?SpringBoot整合shiro-spring-boot-starterqi項目報錯解決,文章圍繞主題展開詳細的內(nèi)容介紹,具有一定的參考一下
    2022-08-08
  • 基于Integer值判斷是否相等的問題

    基于Integer值判斷是否相等的問題

    這篇文章主要介紹了基于Integer值判斷是否相等的問題,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2021-01-01
  • java中利用Dom4j解析和生成XML文檔

    java中利用Dom4j解析和生成XML文檔

    本篇文章主要介紹了java中利用Dom4j解析和生成XML文檔,dom4j是一套非常優(yōu)秀的Java開源api,主要用于讀寫xml文檔,具有性能優(yōu)異、功能強大、和非常方便使用的特點。有興趣的可以了解一下。
    2016-11-11
  • IDEA 2020.3 更新了機器學習都整上了

    IDEA 2020.3 更新了機器學習都整上了

    IDEA 歡迎窗口全新升級,首頁增加三個選項卡,一個用于設置 IDE 界面的 Customize,一個用于插件安裝的 Plugins,一個于訪問幫助和學習資源的 Learn IntelliJ IDEA,另外包括之前用于管理項目的 Projects,需要的朋友可以參考下
    2020-12-12
  • 純Java實現(xiàn)數(shù)字證書生成簽名的簡單實例

    純Java實現(xiàn)數(shù)字證書生成簽名的簡單實例

    下面小編就為大家?guī)硪黄僇ava實現(xiàn)數(shù)字證書生成簽名的簡單實例。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2016-08-08
  • Spring避免循環(huán)依賴的策略詳解

    Spring避免循環(huán)依賴的策略詳解

    在Spring框架中,循環(huán)依賴是指兩個或多個bean相互依賴對方,形成一個閉環(huán),這在應用啟動時可能導致BeanCurrentlyInCreationException異常,本文給大家介紹了Spring中如何避免循環(huán)依賴,需要的朋友可以參考下
    2024-02-02
  • Java客戶端服務端上傳接收文件實現(xiàn)詳解

    Java客戶端服務端上傳接收文件實現(xiàn)詳解

    這篇文章主要介紹了Java客戶端服務端上傳接收文件實現(xiàn)詳解,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
    2020-07-07

最新評論