带你手把手,用 java swing实现抖音上的表白程序

1.准备工作

a.需要下载一个带着swing插件的eclipse

b.需要配置好JDK

c.创建一个JFrame的项目(如下图所示的步骤)



d.把资源文件放入与src所在的那个目录

​ 步骤如下:

1.先复制资源文件

2.粘贴文件

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

​ 这第3步的具体操作如何所示

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

解答:看Referenced Libraries下面是否出现了刚刚build path的

两个文件,若出现了,则代表添加成功(成功的视图如下所示:)

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

source界面用于写源代码,主要是用于写触发按键某一事件,需要进行简单的逻辑判断
design界面是通过可视化界面来帮我们进行界面的基本设计,直接拖拽即可,不用书写那些定义、基本属性的赋值这类的java代码了

2.界面窗体的设计与实现

整体的按钮的布局应该如下图所示

实现过程如下:

​ 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界面.根据刚刚的布局分布图,把按键移动到合适位置

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.对按钮加上监听事件

3.1 对"好的"这个按钮加上鼠标点击事件

3.1.1 在design界面对"好的"按钮添加鼠标点击事件

3.2.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文件夹同级别时,这样写就可以了
//这个放的位置在方法体外面

5.源代码

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() {@Overridepublic void mouseEntered(MouseEvent arg0) {Random random=new Random();int x=random.nextInt(480);int y=random.nextInt(380);button.setBounds(x, y, 113, 27);}@Overridepublic 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() {@Overridepublic 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实现抖音上的表白程序相关推荐

  1. 抖音java表白教程_抖音上的表白代码是什么 抖音表白代码怎么写

    抖音上的表白代码是什么 以前大家总说工科生不懂浪漫,但最近抖音上很流行用代码来表白,将代码编写好,然后将文档发给要表白的对象,然后就可以等着对方进入你的表白套路了.其实这是弹窗表白的代码不是很复杂,一 ...

  2. 抖音程序员表白代码c语言,程序员过情人节:教你做抖音同款表白程序!

    原标题:程序员过情人节:教你做抖音同款表白程序! 最近抖音上一个很简单的vbs告白编程代码视频火了,双击这个编程代码编写的软件后会弹出一个窗口显示一段话,点击确定后会显示下一句.这个小程序很有意思也很 ...

  3. 抖音计算机表白文档,抖音上的表白代码是什么 抖音表白代码自动生成方法

    以前大家总说工科生不懂浪漫,但最近DJ抖音网很流行用代码来表白,将代码编写好,然后将文档发给要表白的对象,然后就可以等着对方进入你的表白套路了.其实这是弹窗表白的代码不是很复杂,一般人按照步骤来都可以 ...

  4. 抖音上火的电脑代码cmd_抖音上的表白代码有哪些怎么弄 电脑代码设置生成方法...

    近期在抖音之中流行起了许多表白的套路,最有意思的就是抖音表白代码怎么设置呢?为了帮助大家表白成功,小编特意带来了表白代码设置方法详解. 抖音表白代码怎么设置 方法一 msgbox("做我女朋 ...

  5. 盘点抖音上的整蛊程序,会了这些谁还敢跟你玩?小心没朋友啦

    相信很多人在刷抖音的时候看到了不少程序员做的表白神器.辞职报告.整人代码等等,是不是觉得很酷,其实也没有什么技术含量,下面我带大家解读一下这类玩意到底是怎么做的 千万不要随意尝试,否则后果自负哦!!!

  6. python时钟罗盘酷炫代码_抖音上的时钟屏保,被我改造完用来表白

    作者:爱编程的小和尚 原文链接:https://blog.csdn.net/Newbie___/article/details/105378852 抖音上很火的时钟屏保,被我改造完后用来准备准备准备表 ...

  7. java抖音字符视频_抖音上很火的字符画 Android 实现 | 视频转换实现

    最后像国际象棋格子一样,一块一块的替换掉,由于计算相对比较复杂,所以耗时比较长,因此当时那个demo也让我搁置了. 最近看到这篇日推,不由得眼前一亮,因为很少有人在android端做这种东西,因为算法 ...

  8. 抖音上的时钟屏保,被我改造完用来表白

    抖音上很火的时钟屏保,被我改造完后用来准备准备准备表白,谁说程序员不浪漫?! 闲言少叙,书归正文,因为gif格式的图片只能上传5M,所以我只能切成两块,中间还删减了一些,大家凑合着看,不要打我,大家可 ...

  9. 最近分享一款抖音上很火的七夕节程序员表白页面_html5七夕表白放烟花动画特效...

    html5七夕表白放烟花动画特效 最近分享一款抖音上很火的七夕节程序员表白页面.小姐姐,我好喜欢你,你愿意做我女朋友吗? 表白成功触发烟花背景动画特效. 表白内容:有人说,人的一生会遇到2920万人, ...

  10. 抖音上用计算机表白,抖音最火表白句子

    爱情,要么让人成熟,要么让人堕落,下面是小编整理的抖音最火表白句子,欢迎阅读! 1.喜欢看你认真的样子,忍不住想要永远拥有你的微笑. 2.问你一个好傻的问题,如果我喜欢上了你,该怎么办? 3.一生长长 ...

最新文章

  1. jenkins打完包在哪里
  2. python学习(8)
  3. php getimagecompose,Docker进阶:Dockerfile以及docker-compose工具
  4. udp recvfrom阻塞吗_网络编程原理与UDP实现
  5. DOCKER基础技术:LINUX NAMESPACE(上)
  6. 零基础怎么自学日语?
  7. 启动mongodb时发现错误libcrypto.so.10
  8. 听说你的淘客群又做死了?来学学群维护这几招!
  9. aop aspectj autoproxy / 的作用
  10. 基于滑窗捕获的伪卫星系统抗远近效应方法研究
  11. 1096:数字统计(C C++)
  12. js模板引擎Template.js使用详解及免费下载template.js
  13. 北斗GPS同步时钟(授时系统)技术原理详解
  14. iOS 调试:DerekSelander【 LLDB aliases/regexes and Python scripts to aid in your debugging sessions】
  15. 宿主手机联系人、通话记录、短信工具类(不断完善中。。。)
  16. 14正交向量与子空间
  17. 基于AndroidVideoCache的预加载(附Demo)
  18. 公司员工信息管理系统
  19. 【EI稳检|华东交通大学主办】2021年智慧交通、能源与动力国际学术会议(STEP 2021)...
  20. 如何修复损坏的硬盘分区

热门文章

  1. ABB变频器配件,西门子变频器配件,施耐德变频器配件
  2. 电子海图的航线多尺度生成方法
  3. 机械电子计算机哪个更适合创业,二本 电气工程及其自动化,和机械电子工程 哪个专业技术性很强,更好就业,更适合考研。...
  4. 电信光猫 远程服务器,如何禁止电信远程控制服务器修改光猫配置信息
  5. Oracle数据恢复工具-ODU破解记录
  6. dialogArguments
  7. VC++2010学习版安装包下载,需要的百度网盘自取
  8. visual foxpro v6.0官方版
  9. 网易wap新闻客户端
  10. 谷歌地球看不了街景_PPT放入3D模型之后,居然能模拟谷歌地图!