java GUI怎么输入_在Swing中创建Java GUI以进行表单输入
好吧,我已经浏览了整个互联网,但却未能找到这个问题的答案,所以也许有人可以提供一些见解.
我正在开发一个相对简单的Java应用程序,它将取代目前用于系统访问请求的Word文档.它旨在允许表单输入新的员工雇用信息 – 名称,所需的访问权限等.
所以这是我的问题.尝试使用所有文本字段和所有内容制作GUI令人惊讶地痛苦.因为每个小部件有点不同,所以在填写表单后获取输入似乎需要为每个小部件单独引用,以便我可以单独调用它们.这意味着一个部分的每个面板有6-10个不同的私有字段. (我尝试将所有类似的小部件添加到列表中并在循环中调用它们,但这似乎不起作用.)
在某些方面,似乎Web表单更适合这种情况,但我没有可用的基础结构.有没有人找到比这更类似的更好的解决方案呢?它似乎只是一大堆代码.请参阅下面的一个想法(我提出了一些评论而不是实际的代码,因为它太长了).谢谢你的期待!
private JComboBox my_dates;
private JTextField my_date1;
private JTextField my_date2;
private JTextField my_request_date;
private JTextField my_new_legal_name;
private JTextField my_new_pref_name;
private JTextField my_new_username;
private JTextField my_prev_legal_name;
private JTextField my_prev_pref_name;
private JTextField my_prev_username;
private JTextField my_emp_id;
private JTextField my_manager;
private JTextField my_auth_requestor;
private JTextField my_auth_phone;
public NameChangePanel(FormSection the_section)
{
super();
initialize();
buildPanel(the_section.getFields());
}
private void initialize()
{
// Create all the widgets individuall
}
private void buildPanel(List the_fields)
{
// add a field label
// add a component
// repeat for all values
}
public List getFormValues()
{
// Call all of the private fields individually
return values;
}
}
解决方法:
Vanilla Swing很冗长 – 没有争论.基本上对于这种事情,我最终依赖于一堆本地生成的util / factory方法,比如createTextBox(),它们被参数化以供常用,并将执行必要的3-8语句.
我有时甚至会参数化布局.我倾向于将所有布局减少到GridBagLayout(其他人做BorderLayout等;这只是个人偏好的问题),然后创建方法,将控件放在网格中的特定点.
如果你不是基于网络的,我会坚持使用Swing.它可能很冗长,但对于一个简单的形式来说并不是那么困难.
标签:java,user-interface,swing
来源: https://codeday.me/bug/20190717/1485554.html
java GUI怎么输入_在Swing中创建Java GUI以进行表单输入相关推荐
- python不满足条件重新输入_如果Python中不满足条件,则拒绝用户输入
我知道这个问题和我已经问过的问题很相似,但它是一个扩展,因此它有自己的空间 我是一个Python新手,编写一个代码,它从用户那里获取输入,然后将用户输入存储在数组中(以后再做更多的工作),前提是满足两 ...
- java osgi web开发_在Tomcat中使用Java Web应用程序的OSGi软件包
我试图从Java Web应用程序调用OSGi包的方法.两者都应该在Tomcat 7上运行. 我已经写了一个正常的Java应用程序,它调用OSGi软件包中的方法,如本站所述:http://drupal. ...
- hadoop创建java项目的步骤_为 Apache Hadoop 创建 Java MapReduce - Azure HDInsight | Microsoft Docs...
您现在访问的是微软AZURE全球版技术文档网站,若需要访问由世纪互联运营的MICROSOFT AZURE中国区技术文档网站,请访问 https://docs.azure.cn. 为 HDInsight ...
- python网页提交表单_使用Python中的POST请求通过网站表单上传基本文件
我尝试使用Python和HTTP请求在一个随机的网站上上传一个文件.为此,我使用名为Requests的便利库. 根据the documentation,以及StackOverflow here和the ...
- java applet 嵌入网页_在网页中插入Java Applet
Java Applet 是一种允许开发并可以嵌入Web页面的编程语言.Java Applet 小程序是在Java 的基础上演变而成的应用程序,可以嵌入到网页中用来执行一定的任务. 语法: 举例: 插入 ...
- java.lang.IllegalArgumentException: 字符[_]在域名中永远无效。 at
[http-nio-8080-exec-1] org.apache.coyote.AbstractProcessor.parseHost [xxx_tomcat] 是无效主机注意:更多的请求解析错误将 ...
- java数字拼图代码_实战-Swing实现数字拼图
实战-Swing实现数字拼图 1 Swing实现数字拼图 我们可以借助Swing和事件处理功能来开发Java数字拼图游戏.让我们看看在Java中创建Java数字拼图游戏的代码. package com ...
- java代码在jsp中怎么写_在jsp中写java代码
该服务器上的所有的访问者的所有 jsp 页面 D.该服务器上的所有的访问者的所有 jsp 页面和 Java 程序 6.在 JSP 中调用 JavaBean 时不会用到的标记是( )...... jav ...
- 在VScode中创建Java项目
在VScode中创建Java项目 1. 配置SDK环境 2.在vscode中下载Java插件 之前使用过idea或者其他IDE编写Java已经下载并配置好了sdk,可以直接跳转到第二步.没有配置过sd ...
最新文章
- 案例 | 杭州佰勤医疗器械:智办事助力企业组织数字化转型
- qstringlist格式怎么写到txt_进阶能力 | 一招解决TXT电子书乱码问题
- URLEncoder.encode转译后“空格”变“加号”的问题的解决方案
- POJ 2752 同一个串的前后串
- 在lamp环境实现nfs中的wordpress使用
- Tableau实战系列如何在阿里云Linux服务器上安装 Tableau Server
- 我的一些项目管理经验
- 【数据结构】排序算法及优化整理
- 重新开始我的园子生活了
- elementui 如何修改表格里面cell的样式
- 让Spring架构减化事务配置(转)
- 关于webstorm 配置 banbel
- 【LeetCode笔记】剑指 Offer 55 - II. 平衡二叉树(递归、二叉树)
- pycharm快捷键_春节快结束了回单位途中总结下pycharm快捷键
- 在easyui中如何使用ajax请求数据,Ajax 中正常使用jquery-easyui (转)
- Oracle 11g R2 Rman备份与恢复
- mysql定时备份脚本
- SE Block (Sequeze and Excitation)
- 下一个十年:数据信仰与认知智能
- ROC曲线的通俗理解
热门文章
- c++排序算法ppt_C/C++学习教程:C语言排序算法—插入排序算法
- 基于几何距离的椭圆拟合
- 计算机类公务员如何提升自己,大学毕业才发现:所学专业对考公务员如此重要,4类专业上岸率高...
- 为什么用python写爬虫_python-做爬虫,如何避免牢狱之灾
- php 判断是否文件,利用PHP判断文件是否为图片的方法总结
- 如何使用python效率_Python的5中提高效率的用法
- python3.6.5怎么下载_windows下如何下载并安装Python 3.6.4 ?
- Stream流思想和常用方法
- P4592 [TJOI2018]异或 (可持久化Trie)
- matplotlib 第二次执行报错在 django web服务中