Loading [MathJax]/jax/output/CommonHTML/config.js
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何组合GUI类和扫描器类?

如何组合GUI类和扫描器类?
EN

Stack Overflow用户
提问于 2014-10-07 14:26:42
回答 1查看 1.1K关注 0票数 1

我是java的新手,我正在尝试创建一个程序,它将首先要求用户输入一些数字,然后输出一个卷、面积等等。另外,我想显示一个矩形,我不知道如何做,因为我的程序运行良好,只是不会显示矩形。我能做什么?

代码语言:javascript
运行
AI代码解释
复制
package testchap3;

import java.util.*;
import javax.swing.JApplet;
import java.awt.*;

public class Chapter_3 extends JApplet
{
    public void paint(Graphics page)
    {
        page.drawRect(50,50,60,60);
    }

    public static void main(String[] args)
    {
        int lenght,width,height,volume,Area,Perimeter;

        Scanner scan = new Scanner(System.in);

        System.out.println("What is the lenght:");
        lenght = scan.nextInt();

        System.out.println("What is the height:");
        height = scan.nextInt();

        System.out.println("What is the width:");
        width= scan.nextInt();

        volume = (lenght*height*width);
        Area= volume/height;
        Perimeter= lenght+width+lenght+width;   

        System.out.println("Your volume is:"+volume);
        System.out.println("Your Area is:"+ Area);
        System.out.println("Your perimeter is:"+Perimeter);

     }
}
EN

回答 1

Stack Overflow用户

发布于 2014-10-07 14:28:02

你的问题:

如何组合GUI类和扫描器类?

简短的回答:不要。

更长的答案:至少不要尝试将GUI和与系统绑定在一起的扫描仪结合在一起,因为这会导致两种截然相反的获取用户输入的方法:线性控制台输入和事件驱动的GUI交互。相反,为什么不让用户以事件驱动的方式通过GUI输入信息呢?否则,首先您将失去使用GUI的所有优点,并且可能会将GUI的事件线程绑定到控制台输入。

在您的例子中,我有三个JTextFields、JFormattedTextFields或JSpinners,用户可以输入数据,然后在按下一个JButton并启动它的操作之后,在另一个文本组件或JLabel中显示结果。

其他问题:您的GUI是一个JApplet,但是您已经给它一个主方法,并运行它的主要方法,这个方法永远不会工作,也不会显示GUI。请阅读GUI教程,您可以找到here。相反,显示一个JFrame,而不是applet,重写一个JPanel并在它的paintComponent方法中绘制(按照教程的方式),然后再次删除所有的扫描程序代码。

票数 7
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/26246308

复制
相关文章
Swift 日历添加事件 删除事件
import EventKit /** Privacy - Calendars Usage Description 添加日历权限 info.list 配置权限 */ /// 日历添加事件 class KKAddEventClasse: NSObject { /// 添加成功回调 typealias SuccessAddEvent = ((_ identifier: String) -> Void) /// 添加失败回调 typealias ErrorAddEvent =
菜菜不吃蔡
2021/03/20
4.1K1
如何获取相应tableview中的touchesBegan事件[通俗易懂]
项目中使用了UITableViewController,里面有用到UITextView需要点击键盘外的地方来隐藏我的键盘
全栈程序员站长
2022/09/15
1.6K0
如何从列表中获取元素
观察URAM的物理管脚,不难发现A/B端口都有相应的地址、使能、读写控制信号。与BRAM不同的是URAM的读写使能信号是同一个管脚RDB_WR_A/B,其为0时执行读操作,为1时执行写操作,这意味着一旦A/B端口独立,同一端口的读写操作就无法同时发生,因此,如果采用上一篇文章中介绍的方法将其配置为两个独立的单端口RAM,其读写行为与常规的单端口RAM是不同的,进一步而言,此时的读写行为类似于NO_Change模式。
Lauren的FPGA
2019/10/30
18.8K0
如何从JavaScript对象中删除属性?
在使用 JavaScript 中的对象时,你可能会遇到需要从对象中完全删除属性的情况。为实现这一点可以有好几个选择:
疯狂的技术宅
2021/04/01
13.2K0
如何从组中删除Linux用户?
在Linux中,用户可以是一个主要组和一个或几个次要(辅助)组的成员。文件“ / etc / group”为Linux系统中的每个用户定义了组成员身份。
用户6543014
2020/04/07
20.3K0
Javascript 中如何存储,获取和删除 Cookies
Javascript 中如何存储,获取和删除 Cookies。 function setCookie(name,value){ var exp = new Date(); exp.setTime(exp.getTime() + 30*24*60*60*1000); document.cookie = name + "="+ escape (value) + ";expires=" + exp.toGMTString(); } function getCookie(name){
Denis
2023/04/15
1.6K0
从Git仓库中恢复已删除的分支、文件或丢失的commit
比如:执行checkout -f 或 reset -hard 或 branch -d删除一个分支
用户8705050
2021/06/08
3.7K0
如何从Ubuntu Linux中删除Firefox Snap?
Ubuntu Linux是一款广受欢迎的开源操作系统,拥有强大的功能和广泛的应用程序选择。默认情况下,Ubuntu提供了一种称为Snap的软件打包格式,用于安装和管理应用程序。Firefox是一款流行的开源网络浏览器,而Firefox Snap是Firefox的Snap版本。
网络技术联盟站
2023/05/25
5.6K0
如何从Ubuntu Linux中删除Firefox Snap?
Exchange删除移动完成的邮箱记录
在Exchange服务器维护中,常用 New-MoveRequest 命令来移动邮箱到指定的数据库。要想查询移动的状态,可使用 Get-MoveRequest 命令来获取移动的状态。
水中游泳的小鸟
2019/03/16
1.2K0
如何从 Python 列表中删除所有出现的元素?
在 Python 中,列表是一种非常常见且强大的数据类型。但有时候,我们需要从一个列表中删除特定元素,尤其是当这个元素出现多次时。本文将介绍如何使用简单而又有效的方法,从 Python 列表中删除所有出现的元素。
网络技术联盟站
2023/06/01
14K0
Spring 如何从 IoC 容器中获取对象?
前面几篇文章主要分析了 Spring IoC 容器如何初始化,以及解析和注册我们定义的 bean 信息。
WriteOnRead
2021/03/12
10.4K0
Spring 如何从 IoC 容器中获取对象?
网页中如何获取客户端系统已安装的所有字体?
如何获取系统字体? 1.首先在需要获取系统字体的网页<body>后加入以下代码: <DIV style="LEFT: 0px; POSITION: absolute; TOP: 0px"> <OBJECT ID="dlgHelper" CLASSID="clsid:3050f819-98b5-11cf-bb82-00aa00bdce0b" WIDTH="0px" HEIGHT="0px"> </OBJECT> <script src="FontFacesMenu.js" language="javascript" type="text/javascript"></script> </DIV>
Java架构师必看
2021/03/22
7.4K0
如何优雅的从Array中删除一个元素
从JavaScript数组中删除元素是开发人员经常遇到的常见编程范例。与许多JavaScript一样,这并不像它应该的那么简单。
Jean
2018/12/21
10.3K0
如何从 Python 中的字符串列表中删除特殊字符?
在进行字符串处理和文本分析时,有时我们需要从字符串列表中删除特殊字符。特殊字符可能是空格、标点符号、换行符等,在某些情况下它们可能干扰我们的文本处理或分析任务。Python 提供了多种方法来删除字符串列表中的特殊字符。本文将详细介绍在 Python 中删除字符串列表中特殊字符的几种常用方法,并提供示例代码帮助你理解和应用这些方法。
网络技术联盟站
2023/06/01
9.5K0
Git 命令行教程:如何在 GitLab 中恢复已删除的分支
在软件开发过程中,版本控制是一个至关重要的环节。Git 是最流行的分布式版本控制系统之一,它能够帮助团队高效地管理代码。然而,有时候会发生意外,例如代码误合、错误的删除等情况,导致重要的开发分支本地和远程不慎被删除。本文将为您介绍如何使用 Git 命令行在 GitLab 中恢复已删除的分支,帮助您快速解决这类问题。
修己xj
2023/08/25
1.4K0
Git 命令行教程:如何在 GitLab 中恢复已删除的分支
Android向系统日历添加日程事件
在项目开发过程中,有时会有预约提醒、定时提醒等需求,这时我们可以使用系统日历来辅助提醒。通过向系统日历中写入事件、设置提醒方式(闹钟),实现到达某个特定的时间自动提醒的功能。这样做的好处是由于提醒功能是交付给系统日历来做,不会出现应用被杀情况,能够做到准时提醒。 一般来说实现向系统日历中读写事件一般有以下几个步骤: (1)需要有读写日历权限; (2)如果没有日历账户需要先创建账户; (3)实现日历事件增删改查、提醒功能;
developerHaoz
2022/05/13
3.3K0
从DataFrame中删除列
在操作数据的时候,DataFrame对象中删除一个或多个列是常见的操作,并且实现方法较多,然而这中间有很多细节值得关注。
老齐
2021/03/29
7.7K0
算法-删除已排序数组中的重复项
版权声明: https://blog.csdn.net/li_xunhuan/article/details/89843311
Fisherman渔夫
2019/07/31
3.6K0
点击加载更多

相似问题

如何在颤振项目中使用Logger

26

Dart /颤振错误:“toStringDeep”未为类“Logger”定义

41

颤振:颤振插件、颤振软件包和颤振模块有什么区别?

24

Android和颤振

14

颤振清洁和颤振运行(Ios)永不结束

18
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档