为什么添加了一个传值后,程序运行就不成功了呢?

「已注销」 2020-12-22 10:57:58
...全文
4051 11 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
YXTS122 2021-02-01
  • 打赏
  • 举报
回复
YXTS122 2021-01-31
  • 打赏
  • 举报
回复
「已注销」 2020-12-22
  • 打赏
  • 举报
回复
可以运行,但是没有功能
「已注销」 2020-12-22
  • 打赏
  • 举报
回复
引用 1 楼 viewgroup的回复:
可以贴代码么。。而且你也没有标注在哪里不运行了。。。
import java.awt.Dimension; import java.awt.Toolkit; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import java.util.Random; import javax.swing.JButton; import javax.swing.JFrame; import javax.swing.JLabel; import javax.swing.JOptionPane; import javax.swing.JTextField; import input.WindowInput; public class One { public static void main(String[] args) { JFrame jFrame = new JFrame("算术运算测试程序");//定义一个窗口 int with = 200; //宽 int height = 380; //高 Dimension dimension = Toolkit.getDefaultToolkit().getScreenSize(); //dimension是Java的一个类,封装了一个构件的高度和宽度 jFrame.setBounds(((int) dimension.getWidth() - with) / 2, ((int) dimension.getHeight() - height) / 2, with, height);//设置初始位置 jFrame.setResizable(false); //设置窗口不可调节大小 jFrame.setLayout(null); //设置一个空布局 jFrame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); //关闭图标之后怎么办 Random random = new Random(); //设置一个随机数 final JLabel[] lablesA = new JLabel[10]; //设置标签 final JLabel[] lablesB = new JLabel[10]; final JLabel[] lablesC = new JLabel[10]; final JTextField[] texts = new JTextField[10];//十个输入文本框 String[] operates = {"+", "-"}; //加减号 int n=1; WindowInput h=new WindowInput();//输入题数 n=h.Tran(); //赋值 for(int i = 0; i <n; i++) { int a = random.nextInt(100); //产生0-100的随机数 lablesA[i] = new JLabel("" + a); lablesA[i].setBounds(0, i * 30, 20, 30); //放置的位置及大小 jFrame.add(lablesA[i]); //添加组件 int operateNumber = random.nextInt(operates.length); //设置一个0或1的随机数 lablesB[i] = new JLabel(operates[operateNumber]); lablesB[i].setBounds(30, i * 30, 20, 30); jFrame.add(lablesB[i]); int b = 0; if(operateNumber == 0) { b = random.nextInt(100 - a); //令a+b<=100 } else { b = random.nextInt(a); //令b<=a } lablesC[i] = new JLabel("" + b); lablesC[i].setBounds(60, i * 30, 20, 30); jFrame.add(lablesC[i]); JLabel label = new JLabel("="); label.setBounds(90, i * 30, 20, 30); jFrame.add(label); texts[i] = new JTextField(); texts[i].setBounds(120, i * 30 + 5, 70, 20); jFrame.add(texts[i]); //添加输入文本框 } JButton button = new JButton("计算分数"); //设置按钮 button.setBounds(0, 300, 190, 50); //按钮的位置及大小 button.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { int count = 0; for(int i = 0; i <5; i++) { try { int result = Integer.parseInt(texts[i].getText()); //获得int型的数值 int a = Integer.parseInt(lablesA[i].getText()); int c = Integer.parseInt(lablesC[i].getText()); if(("+".equals(lablesB[i].getText()) && a + c == result) || ("-".equals(lablesB[i].getText()) && a - c == result) ) { count++; } } catch(Exception ex) { } } JOptionPane.showMessageDialog(null, "你得了:" + count * 10 + "分", "提示", JOptionPane.INFORMATION_MESSAGE); } }); jFrame.add(button); jFrame.setVisible(true); } }
viewgroup 2020-12-22
  • 打赏
  • 举报
回复
可以贴代码么。。而且你也没有标注在哪里不运行了。。。
YXTS122 2020-12-22
  • 打赏
  • 举报
回复
运行不成功,应该有报错的。。。。。
viewgroup 2020-12-22
  • 打赏
  • 举报
回复
引用 6 楼 八五秋 的回复:
[quote=引用 4 楼 viewgroup的回复:]WindowInput h=new WindowInput();//输入题数
n=h.Tran(); 这个是干什么用的? 我把n固定为10,是有功能的。。是不是因为你的h.Tran()==0 啊。。。你看一下

我也,最开始n是10,是可以的,WindowInput h,是定义了一个类变量,引用了WindowInput里的JTextField变量inputNumber。我是想输入一个数字,然后出现和输入数字一样的题数。WindowInput是自定义类,这个也要贴出来吗?还是说说明一下就好了呢?[/quote]

那你可以输出一下这个就可以了。。看看获取出来的值是不是0,如果是0,你要看一下赋值的过程。。
「已注销」 2020-12-22
  • 打赏
  • 举报
回复
引用 5 楼 qq_39936465的回复:
引用 2 楼 八五秋 的回复:
[quote=引用 1 楼 viewgroup的回复:]可以贴代码么。。而且你也没有标注在哪里不运行了。。。
请看置顶贴,学会贴代码,然后标注一下哪里有问题。[/quote] 好的,因为我是手机发帖,第一次发帖,没有看见置顶
「已注销」 2020-12-22
  • 打赏
  • 举报
回复
引用 4 楼 viewgroup的回复:
WindowInput h=new WindowInput();//输入题数
n=h.Tran(); 这个是干什么用的? 我把n固定为10,是有功能的。。是不是因为你的h.Tran()==0 啊。。。你看一下
我也,最开始n是10,是可以的,WindowInput h,是定义了一个类变量,引用了WindowInput里的JTextField变量inputNumber。我是想输入一个数字,然后出现和输入数字一样的题数。WindowInput是自定义类,这个也要贴出来吗?还是说说明一下就好了呢?
qq_39936465 2020-12-22
  • 打赏
  • 举报
回复
引用 2 楼 八五秋 的回复:
引用 1 楼 viewgroup的回复:
可以贴代码么。。而且你也没有标注在哪里不运行了。。。
请看置顶贴,学会贴代码,然后标注一下哪里有问题。
viewgroup 2020-12-22
  • 打赏
  • 举报
回复
WindowInput h=new WindowInput();//输入题数
n=h.Tran(); 这个是干什么用的? 我把n固定为10,是有功能的。。是不是因为你的h.Tran()==0 啊。。。你看一下

51,396

社区成员

发帖
与我相关
我的任务
社区描述
Java相关技术讨论
javaspring bootspring cloud 技术论坛(原bbs)
社区管理员
  • Java相关社区
  • 小虚竹
  • 谙忆
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧