编写图形界面下的Java Swing程序,接受用户输入的两个数据为上下限,然后输出上、下限之间的所有素数。(结果部分每行显示10个数据)
这个代码我整体写的比较简单,读者可以简单参考一下,对人家题目要求略微修改了一下,多加了一个“置空”按钮。下图为我设计的界面
运行程序后的截图请看我后面的截图:
package com.wangshilin.study.app_127;
import java.awt.EventQueue;
import javax.swing.JFrame;
import javax.swing.JTextField;
import javax.swing.JButton;
import javax.swing.JLabel;
import javax.swing.JTextArea;
import javax.swing.JScrollPane;
import java.awt.event.ActionListener;
import java.awt.event.ActionEvent;
import java.awt.Color;
import java.awt.Font;
/**
* 通过简单的Swing组件实现求两个数之间的素数!
* @author wangshilin
*
*/
public class Demo_app {
private JFrame frame;
private JTextField xiaxian;
private JTextField shangxian;
private JTextArea textArea;
private JLabel label;
private JLabel label_1;
private JScrollPane scrollPane_1;
private JButton bt;
private JButton bt_chongzhi;
public String sushu(int a, int b) {
String string ="";
int num = 0;
for (int i = a; i <= b; i++) {
boolean flag = true;
for (int j = 2; j <= Math.sqrt(i); j++) {
if (i % j == 0)
flag = false;
}
if (flag == true) {
string += Integer.toString(i) + "\t";
num++;
}
if (num == 10) {
string += "\n";
num = 0;
}
}
return string;
}
/**
* Launch the application.
*/
public static void main(String[] args) {
EventQueue.invokeLater(new Runnable() {
public void run() {
try {
Demo_app window = new Demo_app();
window.frame.setVisible(true);
/**
* 给执行按钮添加事件
*/
window.bt.addActionListener(new ActionListener() {// 给按钮添加事件接收器
@Override
public void actionPerformed(ActionEvent e) {// 接受到事件后,进行下面的处理
String show=""; //显示的信息
int a = Integer.parseInt(window.xiaxian.getText());
int b = Integer.parseInt(window.shangxian.getText());
if (a<=1 || b<=1) {
window.textArea.setText("您输入的数据不合法!请检查重新输入!您输入的数必须大于或等于2");
}else if (a >=2 && a>=2 && a > b) {
show = window.sushu(b,a);
window.textArea.setText(show);
}else{
show = window.sushu(a,b);
window.textArea.setText(show);
}
}
});
/**
* 给重置按钮添加事件
*/
window.bt_chongzhi.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
// TODO Auto-generated method stub
window.textArea.setText(null);
window.xiaxian.setText(null);
window.shangxian.setText(null);
}
});
} catch (Exception e) {
e.printStackTrace();
}
}
});
}
/**
* Create the application.
*/
private Demo_app() {
initialize();
}
/**
* Initialize the contents of the frame.
*/
private void initialize() {
frame = new JFrame();
frame.setTitle("\u6211\u7684\u5C0F\u7A0B\u5E8F");
frame.setBounds(100, 100, 973, 553);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.getContentPane().setLayout(null);
xiaxian = new JTextField();
xiaxian.setToolTipText("text");
xiaxian.setBounds(80, 57, 166, 27);
frame.getContentPane().add(xiaxian);
xiaxian.setColumns(10);
shangxian = new JTextField();
shangxian.setBounds(289, 57, 166, 27);
frame.getContentPane().add(shangxian);
shangxian.setColumns(10);
label = new JLabel("\u4E0B\u9650");
label.setFont(new Font("隶书", Font.BOLD, 24));
label.setBounds(80, 27, 81, 21);
frame.getContentPane().add(label);
label_1 = new JLabel("\u4E0A\u9650");
label_1.setFont(new Font("隶书", Font.BOLD, 22));
label_1.setBounds(290, 27, 81, 21);
frame.getContentPane().add(label_1);
scrollPane_1 = new JScrollPane();
scrollPane_1.setBounds(80, 146, 787, 313);
frame.getContentPane().add(scrollPane_1);
textArea = new JTextArea();
textArea.setFont(new Font("楷体", Font.BOLD, 14));
textArea.setTabSize(14);
textArea.setBackground(Color.LIGHT_GRAY);
scrollPane_1.setViewportView(textArea);
bt = new JButton("\u6267\u884C");
bt.setFont(new Font("楷体", Font.BOLD, 22));
bt.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
}
});
bt.setBounds(748, 56, 123, 58);
frame.getContentPane().add(bt);
JLabel label_2 = new JLabel("\u663E\u793A\u57DF");
label_2.setFont(new Font("楷体", Font.BOLD, 23));
label_2.setBounds(80, 119, 81, 21);
frame.getContentPane().add(label_2);
bt_chongzhi = new JButton("\u91CD\u7F6E");
bt_chongzhi.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
}
});
bt_chongzhi.setFont(new Font("楷体", Font.BOLD, 22));
bt_chongzhi.setBounds(596, 56, 123, 58);
frame.getContentPane(http://www.my516.com).add(bt_chongzhi);
}
}
---------------------
编写图形界面下的Java Swing程序,接受用户输入的两个数据为上下限,然后输出上、下限之间的所有素数。(结果部分每行显示10个数据)的更多相关文章
- 解决 GTK+/GNOME 3 环境下 Java Swing 程序使用本地 GTK+ 主题时菜单无边框 bug 的方法
在 GTK+/GNOME 3 环境下采用默认的 Adwaita 主题时,Java Swing 程序如果使用本地 GTK+ 主题会出现菜单无边框的 bug,这个问题也可能在其他常用的 GTK+ 主题中出 ...
- Java初学者作业——编写 Java 程序,用户输入 3 个操作数,分别求出最大值、最小值和平均值。
返回本章节 返回作业目录 需求说明: 编写 Java 程序,用户输入 3 个操作数,分别求出最大值.最小值和平均值. 实现思路: 定义 Java 类,定义 3 个方法,用来求 3 个数字的最大值.最小 ...
- 四则运算程序扩展:将程序改为java语言,并允许用户输入,对输入结果进行验证
题目 每个同学选一个方向,把程序扩展一下:1.让程序能接受用户输入答案,并判定对错.最后给出总共对/错 的数量.2.把程序变成一个网页程序,用户通过设定参数,就可以得到各种题目.3.把程序变成一个Wi ...
- JAVA与图形界面开发(Applet应用程序、AWT库、Swing)
Applet 1)简单说,Applet就是嵌入到网页中的小程序,Java代码. 2)编写Applet程序,要继承JApplet类,并根据自己需要覆写相关方法(init.start.stop.destr ...
- AJPFX编写cmd界面下一键编译、执行java代码的bat脚本
此脚本适合刚接触java的同学,在cmd界面下用jc取代 复杂的 javac *.java + java main使用说明:把脚本内容复制到txt文本中,修改后缀名为.bat,运行一次即可完成配置, ...
- phython编写图形界面
Python支持多种图形界面的第三方库,包括: Tk wxWidgets Qt GTK 等等. 但是Python自带的库是支持Tk的Tkinter,使用Tkinter,无需安装任何包,就可以直接使用. ...
- dos界面下执行java文件将错误输出到一个文本小技巧
如果dos下执行java出现错误,把错误记录到一个文档 正确时如图,输出结果为hello,我把String的s改为小写,出现错误,用2>命令输出到error.txt在当前目录就出现了error. ...
- Java初学者作业——简单程序根据用户输入的会员类型以及购物金额,判断是否能够享受活动优惠
返回本章节 返回作业目录 需求说明: 超市周年庆举行购物满减活动,编写Java程序,根据用户输入的会员类型以及购物金额,判断是否能够享受活动优惠,会员类型的输入不限制大小写.具体获取规则:若为VIP会 ...
- Java安全编码之用户输入
0x00 安全引言 1.传统Web应用与新兴移动应用 (1)传统Web应用:浏览器 HTTP 服务器(2)新兴移动应用:APP HTTP 服务器 从安全角度看,传统Web应用与新兴移动应用没有本质区别 ...
随机推荐
- 求两个list的交集和并集
两个list的并集,只需去除重复元素即可: 将两个list放入同一个set中即可: 两个list的交集: 1将其中一个list放入set, 2循环另一个list,每次向set塞值, 3判断set的总数 ...
- YTU 2414: C语言习题 字符串排序
2414: C语言习题 字符串排序 时间限制: 1 Sec 内存限制: 128 MB 提交: 656 解决: 305 题目描述 输入n个字符串,将它们按字母由小到大的顺序排列并输出.编写三个函数实 ...
- WIN8系统的远程桌面漏洞 利用QQ拼音纯净版实现提权
前言 发现这个漏洞的时候, 笔者正在机房上课.正想用3389远程桌面去控制宿舍电脑的时候,因为重做系统忘记自己的IP地址,因此就随手扫描了一下IP段开3389端口的电脑. 没想到就随手扫描到一台WIN ...
- 洛谷P4315 月下“毛景树”(树剖+线段树)
传送门 woc这该死的码农题…… 把每一条边转化为它连接的两点中深度较深的那一个,然后就可以用树剖+线段树对路径进行修改了 然后顺便注意在上面这种转化之后,树剖的时候不能搞$LCA$ 然后是几个注意点 ...
- tableView 加载更多
在ios开中中,由于屏幕尺寸限制,如果需要显示的数据很多,需要用到分页加载. 原理:先数据放到一个table中,先显示10条,table底部有一察看更多选项,点击察看更多查看解析的剩余数据.基本上就是 ...
- Unix\Linux | 总结笔记 | 命令_ WC
wc[选项][参数] wc命令用来计算数字.利用wc指令我们可以计算文件的Byte数.字数或是列数,若不指定文件名称,或是所给予的文件名为“-”,则wc指令会从标准输入设备读取数据. -c或--byt ...
- 计算机视觉-SIFT特征匹配进行目标转换
Lowe将SIFT算法分解为如下四步: 1. 尺度空间极值检测:搜索所有尺度上的图像位置.通过高斯微分函数来识别潜在的对于尺度和旋转不变的兴趣点. 关键点定位:在每个候选的位置上,通过一个拟合精细的模 ...
- DFS(深度) hihoCoder挑战赛14 B 赛车
题目传送门 题意:中文题面 分析:放官方题解,就是从1为根节点深搜记录节点的深度,选出最大的深度的点,将该到达该点的节点都vis掉,然后再重新计算没有vis的点的深度,找最大的相加就是答案.放张图好理 ...
- 【小程序】基于.NET CORE2.1 的 微信开放平台 第三方平台开发 教程一 准备工作
微信第三方平台概述 公众平台第三方平台是为了让公众号或小程序运营者,在面向垂直行业需求时,可以一键授权给第三方平台(并且可以同时授权给多家第三方),通过第三方平台来完成业务,开放给所有通过开发者资质认 ...
- C#---数据库访问通用类、Access数据库操作类、mysql类 .[转]
原文链接 //C# 数据库访问通用类 (ADO.NET)using System;using System.Collections.Generic;using System.Text;using Sy ...