首页 > 其他分享 >Swing日期时间控件

Swing日期时间控件

时间:2023-04-26 20:32:42浏览次数:46  
标签:控件 日期 Swing new calendar txtDtBegin JTextField

概述

Swing控件中没有日期时间选择控件,在gitee中下载了一个别人封装的日期时间选择弹窗控件。

网址:https://gitee.com/mkk/jcalendarchooser


  • Maven安装到本地仓库:
# 注意:windows下需在CMD窗口执行命令
mvn install:install-file -Dfile=C:/Users/gzw/Desktop/calendar.jar -DgroupId=com.zkfr -DartifactId=swing-calendar -Dversion=1.0 -Dpackaging=jar -DgeneratePom=true

Pom

<dependency>
	<groupId>com.zkfr</groupId>
	<artifactId>swing-calendar</artifactId>
	<version>1.0</version>
</dependency>

实际使用

原理:时间显示用 JTextField,然后JTextField绑定鼠标点击事件,弹出日期时间选择控件窗口,关闭该窗口后,返回Calendar类对象,然后将Calendar的日期时间以字符串方式赋值给JTextField即可。

部分代码如下:

# 1. 定义JTextField
m_txtDtBegin = new JTextField(DateTime.now().withMinuteOfHour(0).toString(DT_FORMAT_MIN) );
m_txtDtBegin.setBorder( new EmptyBorder( 0, 5, 0, 0 ) );
m_txtDtBegin.setPreferredSize( new Dimension( 120, height ));
m_txtDtBegin.setEnabled( false );

# 2. 绑定鼠标点击事件
m_txtDtBegin.addMouseListener(new MouseAdapter()
        {
            @Override
            public void mouseClicked(MouseEvent e)
            {
                super.mouseClicked(e);
                onTxtBeginTimeClicked();
            }
        });


# 3. 使用日期时间控件弹窗设置时间
private void onTxtBeginTimeClicked()
{
	JTimeChooser timeChooser = new JTimeChooser(this);
	Calendar calendar = timeChooser.showTimeDialog();

	m_txtDtBegin.setText( new DateTime(calendar.getTime()).toString(DT_FORMAT_MIN) );
}
时间显示用

标签:控件,日期,Swing,new,calendar,txtDtBegin,JTextField
From: https://blog.51cto.com/weiyuqingcheng/6228858

相关文章

  • [每天例题]蓝桥杯 C语言 顺子日期
    顺子日期题目https://www.lanqiao.cn/problems/2096/learning/?page=3&first_category_id=1&sort=students_count&difficulty=30 本题为填空题,只需要算出结果后,在代码中使用输出语句将所填结果输出即可。小明特别喜欢顺子。顺子指的就是连续的三个数字:123、456等。顺子日期......
  • 超大文件上传和断点续传的控件
    ​ PHP用超级全局变量数组$_FILES来记录文件上传相关信息的。1.file_uploads=on/off 是否允许通过http方式上传文件2.max_execution_time=30 允许脚本最大执行时间,超过这个时间就会报错3.memory_limit=50M 设置脚本可以分配的最大内存量,防止失控脚本占用过多内存,此......
  • qt 代码设置layout中的控件的比例,以水平布局为例
    voidDisplayPathFilename::mainlayout(){m_hboxlayout->addWidget(m_filenamelabel);m_filenamelabel->setText("配置文件:");m_hboxlayout->addWidget(m_filenamelineedit);m_hboxlayout->addWidget(m_displaypathlabel);m_dis......
  • Golang - time包获取当前日期/时间戳并格式化输出
    获取时间对象packagemainimport("fmt""time")//24小时制constLAYOUT="2006-01-0215:04:05"//只能用这个日期,据说这是golang的诞生时间funcmain(){//获取当前日期now:=time.Now()fmt.Printf(now.Format(LAYOUT))//2022......
  • Java 编程问题:三、使用日期和时间
    本章包括20个涉及日期和时间的问题。这些问题通过Date、Calendar、LocalDate、LocalTime、LocalDateTime、ZoneDateTime、OffsetDateTime、OffsetTime、Instant等涵盖了广泛的主题(转换、格式化、加减、定义时段/持续时间、计算等)。到本章结束时,您将在确定日期和时间方面没有问题,......
  • Springboot日期注解失败:while it seems to fit format ‘yyyy-MM-dd‘T‘HH:mm:ss.SSS
    提交字符串到后台映射为Date类型可以加上@DateTimeFormat(pattern="yyyy-MM-ddHH:mm:ss")注解,但是报错了!前端提交字符串到后台,出现如下错误:whileitseemstofitformat'yyyy-MM-dd'T'HH:mm:ss.SSSZ',parsingfails(leniency?null))错误的大致意思就是字符串映射到Da......
  • 一键以日期创建目录并定位到
    一键以日期创建目录并定位到;Fileencoding:UTF-8/*AutoHotkey版本:1.1.9.0操作系统:WindowsXP/Vista/7作者:sunwind脚本说明:此脚本一键以日期为名创建文件夹,并定位之。脚本版本:v1.0Timestamp:2013年1月6日,周日,下午3时03分*/F8::For......
  • 界面控件DevExtreme使用指南 - 折叠组件快速入门(二)
    DevExtreme拥有高性能的HTML5/JavaScript小部件集合,使您可以利用现代Web开发堆栈(包括React,Angular,ASP.NETCore,jQuery,Knockout等)构建交互式的Web应用程序,该套件附带功能齐全的数据网格、交互式图表小部件、数据编辑器等。请注意:在开始本教程之前,请确保DevExtreme已安装在Angula......
  • ABAP查询界面日期范围未选择值,则查询前一天的数据
    包含TOP的查询条件:SELECT-OPTIONS:p_bldatFORekbe-bldat."凭证日期包含FORM的代码:RANGES:date_rangeFORekbe-bldat.IFp_bldat[]ISINITIAL.date_range-sign='I'.date_range-option='BT'.date_range-low=sy-datum-1.da......
  • pgsql根据日期查询错误:timestamp without time zone >= character varying
    最近工作中使用到pgsql数据库,使用日期传参查询时提示Causedby:org.postgresql.util.PSQLException:错误:操作符不存在:date>=charactervarying错误主要原因就是pgsql使用string类型参数去查询的话不会自动进行转换,而mysql并没有这种问题。解决方式也很简单,我们将字符串类......