wxpython设计GUI:选中wxFormBuilder工具wxCalendarCtrl控件,实现自动选择日期功能

(原创)Python Tkinter日期选择(日历)‘控件’ python tkinter模块 日期选择 ""控件 阅读详情

1. 期望实现功能

在这里插入图片描述
列表框选择“创建日期”后自动在界面最右侧显示日历,用户鼠标选中最右侧的日历日期后,文本框中自动显示查询日期的上下限,用户可以获取文本框中的日期,再点击“查询”按钮实现查询数据功能。

2. wxFormBuilder工具的Additional页签选择wxCalendarCtrl控件

在这里插入图片描述
使用wxFormBuilder工具搭建基础界面,Additional页签选择wxCalendarCtrl控件后,依次在Frame上布局静态文本框、列表框、文本输入框和按钮,调整布局成期望实现日期选择的界面。

3. 代码实现

		# 查询依据
        self.m_choice2.Bind(wx.EVT_CHOICE, self.show_calendar)
        self.last_date = ""
        self.m_calendar1.Bind(wx.adv.EVT_CALENDAR, self.choice_last_date)
    def show_calendar(self, event):
        search_condition = self.m_choice2.GetString(self.m_choice2.GetSelection())
        if search_condition in ["创建日期"]:
            self.m_calendar1.Show()
        else:
            self.m_calendar1.Hide()

    def choice_last_date(self, event):
        last_date = event.GetDate()
        value = str(last_date).split(" ")[0]
        self.m_textCtrl25.SetValue(value)
        self.last_date = value
        self.m_calendar1.Bind(wx.adv.EVT_CALENDAR, self.choice_next_date)

    def choice_next_date(self, event):
        next_date = event.GetDate()
        value = str(next_date).split(" ")[0]
        if self.last_date.strip() != "":
            value = self.last_date + "_" + value
        self.m_textCtrl25.SetValue(value)
        self.m_calendar1.Bind(wx.adv.EVT_CALENDAR, self.choice_last_date)

有关日历控件的触发事件wx.adv.EVT_CALENDAR可以查看如下链接地址理解。
链接地址:https://docs.wxpython.org/wx.adv.CalendarCtrl.html?highlight=calendarctrl#events-events-emitted-by-this-class
在这里插入图片描述

4. 界面效果

例如:查询7月份的数据,查询依据选择列表框中的“创建日期”,右侧自动显示日历,先鼠标左键双击选中7月1日,文本框自动显示“2022/7/1”;
在这里插入图片描述
再鼠标左键双击选中7月31日,文本框自动显示“2022/7/1_2022/7/31”。用户再选中一个日期即可取消当前文本框显示的“2022/7/1_2022/7/31”。
在这里插入图片描述
支持只选择一个日期进行查询,也支持前后两次鼠标左键双击选中相同的日期,如下图支持日期显示为“2022/7/2_2022/7/2”进行查询。
在这里插入图片描述

使用wxPython的定时器wx.Timer的简单应用实例 wxPython是一个用于创建图形用户界面(GUI)的Python库,它提供了丰富的工具和控件来构建跨平台的桌面应用程序。其中,wx.Timer是wxPython库中的一个定时器类,它可以用于执行定时任务或者周期性地触发事件。本文将介绍如何使用wx.Timer来创建一个简单的定时器应用程序,并提供相应的源代码。点击开始按钮后,定时器将每隔1秒触发一次定时器事件,并在窗口中显示触发次数。函数是定时器事件的处理函数,每当定时器触发时,它将被调用。在该函数中,我们增加了计数器的值,并将其显示在静态文本控件中。 阅读详情

相关推荐

Python 自定义时间选择框

要实现自定义时间选择框,可以按照以下描述进行操作: 界面设计:创建一个界面,可以使用图形用户界面(GUI)库,如Tkinter、PyQt等。在界面上添加一个文本框和一个按钮,用于显示选定的时间和触发时间选择的操作。 时间选择功能:通过按钮点击或其他事件触发时间选择功能。当用户点击按钮时,弹出一个时间选择框,供用户选择所需的时间。可以使用日历控件或自定义的时间选择控件。 时间显示:将选定的时间显示在文本框中,以便用户查看已选择的时间。可以使用日期时间格式化函数来将时间对象转换为指定的字符串格式,并将其设置为文本框的值。 时间验证:对用户选择的时间进行验证,确保其符合预期的时间范围和格式要求。可以在选择时间后进行验证,并在不符合要求的情况下给出相应的提示信息。 其他功能增强:根据需求,可以增加一些其他功能来增强时间选择框的使用体验,如快捷选择按钮、默认时间设置、最大/最小时间限制等。 请注意,在实际代码编写中,需要根据选择的GUI库和具体需求进行相关的调用和处理。此外,还需考虑与其他组件的交互、界面布局和美化等方面的需求。

python 日期时间选择器

# 日期时间选择器 import tkinter as tk from tkcalendar import Calendar from tkinter import ttk from tkinter import * import datetime def start_calendar(): def print_sel(): start_time_text.configure(state="normal") print(str(cal.selection_get(

ducanwang的博客 1429

wxpython 设计日历控件.rar

用wxPython 设计日历控件。选择日期,并print选取日期,可翻转月以及其他需求。网络大多用tk做的。

wxpython 用calendarctrl制作日历以及显示当前日期在statictext上

calendar的日期显示   def beginEvent(self,event): dlgb = wx.Dialog(None, id = -1 ,title='Calendar',size=(300,200)) self.datepick = wx.adv.CalendarCtrl(self.pnl,-1,pos=(600,100)) ...

u010847579的博客 3219

Silvaco TCAD | GaN HEMT器件仿真与高频功率应用实战

本文详细介绍了使用Silvaco TCAD进行GaN HEMT器件仿真的全流程,涵盖器件结构设计、极化效应建模、高频特性分析及功率损耗优化。通过实战案例展示了GaN HEMT在电动汽车电驱和快充模块等高频功率应用中的性能优势与效率提升策略,为工程师提供可靠的仿真方法与设计验证手段。

desk3的博客 183

SQL注入:联合查询的三个绕过技巧

在SQL注入中,可以利用科学计数法来绕过对输入的限制。例如,可以使用科学计数法来绕过对字符串长度的限制,通过将字符串拆分成多个部分并使用科学计数法来表示。此外,还可以利用数据库的特定特性或语法来替代原始的查询语句,从而执行联合查询或其他恶意操作。另外,还可以尝试利用无列名注入的技巧,通过在原始查询中使用通配符或其他方式来绕过对列名的限制,从而执行恶意操作。

qq_68163788的博客 3795

wxPython日历选择

在填写文本时候选择日期可以避免手工输入错误 import wx import wx.adv class DatePicker( wx.adv.DatePickerCtrl): #日期选择类 def __init__(self,parent,dt,style=wx.adv.DP_DEFAULT): super(DatePicker,self).__init__(parent,dt=dt,style=style) self.SetInitialSize((120,-

weixin_42109635的博客 1011

微生物16S数据上传NCBI的SRA库

本篇内容仅包括:俺自己的实验收集了淡水、淡水沉积物、海水、海草附着微生物样品,测序所得的Fastq格式数据,在文章投稿发表时被要求数据需上传NCBI的SRA库,得到一个PRJNA2347899这样子的IDs。仅解决了这个上传过程!

Xf_Niu的博客 7435

wxpython日期控件_wxPython wx.Timer

id=-1)其中参数owner是实现wx.EvtHandler的实例,即任一能够接受事件通知的wxPython控件或其它的东西。参数id用于区分不同的定时 器。如果没有指定id,则wxPython会为你生成一个id号。如果当你创建定时器时,你不想设置参数owner和id,那么你可以以后随时使用 SetOwner(owner=None,id=-1)方法来设置,它设置同样的两个参数。绑定定时器在你创...

weixin_39735012的博客 640

Elsevier投稿实战:从ESWA模板到录用通知的全流程拆解

本文详细拆解了Elsevier旗下期刊ESWA(Expert Systems With Applications)的投稿全流程,从模板选择、投稿系统操作到审稿意见回复和录用后注意事项。重点分享了单栏LaTeX模板调整、APA文献格式处理、Highlights撰写技巧等实战经验,帮助研究者高效完成投稿并提升录用概率。

weixin_32715349的博客 241

解决用加速器以后,电脑无法连接网络的问题

相信很多朋友也遇到过,用加速器以后,电脑网络直接断了,或者访问外网时打不开的情况解决办法是。

qq_46368050的博客 1万+

wxpython日期控件_wxPython wx.StaticText Create()用法及代码示例

在本文中,我们将学习与wxPython的wx.StaticText类关联的Create()。静态文本控件显示一行或多行只读文本。Create()功能用于两步创建静态文本。我将statictext的属性作为参数。用法: wx.StaticText.Create(parent, id=ID_ANY, label=””, pos=DefaultPosition, size=DefaultSize, st...

weixin_32601635的博客 410

QGIS004:【05矢量属性表】-保留字段、删除字段、添加唯一值索引字段、添加字段到属性表、添加自增量字段、添加XY字段到图层、文本型转浮点型、重构字段、重命名字段

摘要:QGIS矢量属性表工具箱包括保留字段、删除字段、添加唯一值索引字段、添加字段到属性表、添加自增量字段、添加XY字段到图层、文本型转浮点型、重构字段、重命名字段等选项,本文介绍各选项的基本操作。

qq_31762031的博客 2312

wxpython用DatePickerCtrl做日期区间选择

1、用TextCtrl形成文本编辑框 self.yearInput1 = wx.TextCtrl(self.pnl, -1, u'', pos=(190, 40), size=(60, -1)) self.yearInput1.SetForegroundColour('gray') self.yearInput1.SetFont(font) 2...

u010847579的博客 5836

livox雷达斜装修改

指的是,使用外部的陀螺仪的话,雷达到外部陀螺仪的转换,而mid360的陀螺仪是内置在360里面的,且方向和点云方向是一致的,所以不能通过修改此处去改变陀螺仪方向。同时livox_ros_driver2中的MID360_config.json里面的。这里面的外参,只能改变点云相对陀螺仪的位姿,而不能将陀螺仪映射到你期望的倾斜角度。fast_lio中的mid360.yaml中的外参。

z1872385的博客 2711

124、LLC谐振变换器的矩阵变压器设计

摘要 本文分享了LLC谐振变换器中矩阵变压器的实战设计经验。针对大功率LLC单颗变压器的痛点(绕组层数多、散热不均、漏感一致性差),作者提出将大变压器拆分为多个小变压器单元(建议6个),通过原边串联、副边并联的方式实现功率分配。详细解析了磁芯选型、匝比计算、绕组结构、漏感控制和散热设计等关键参数,特别强调了小磁芯优势、等效匝比计算误区以及三明治绕法的重要性。文中还总结了调试过程中的谐振频率偏移和均流问题解决方案,并给出了矩阵数量选择、磁芯材质、绝缘材料等实用建议。作者指出,矩阵变压器在2kW以上LLC应用中

Jack010169的博客 170

wxpython日期控件_wxpython没有提供日期时间选择按钮吗??

有的。wx.DatePickerCtrl()可提供日期选择。以下脚本可显示日历:#-*- coding: utf-8 -*-import wx"""显示日历"""class TestPanel(wx.Frame):def __init__(self, parent, title):wx.Frame.__init__(self, parent, title = title,size=(600,-1)...

weixin_39658019的博客 833

Probability and Statistics - 4th edition

Probability and Statistics - 4th edition

Python日期操作和wxpython简单界面

在写报名表处理、分析的时候,我基友问我怎么在excel中统计一段日期内有几个周几周几周几,我说这似乎跟excel没啥关系吧?要不我给你写一个小程序,分别输入开始日期和结束日期,然后属于想要统计的周几,然后就出来统计结果,他说可以。 因为设计到日期,可以用python的datetime包来计算比手动实现(还要分闰年)容易得多。 首先通过input(...

Type真是太帅了 1611

复分析 阿尔福斯(Ahlfors) 第三版答案 英文

答案分为十章,有部分习题没有答案,全英文复分析阿尔福斯(Ahlfors) 第三版答案

LinePhone3.2.7(android端最新版本) sip客户端

SIP客户端For android:LinePhone3.2.7(最新版本),官网地址:http://www.linphone.org/

pythonwx功能_wx python 基本控件

一、静态文本控件wx.StaticText(parent, id, label, pos=wx.DefaultPosition,size=wx.DefaultSize, style=0, name="staticText")wx.StaticText构造函数的参数parent:父窗口部件。id:标识符。使用-1可以自动创建一个唯一的标识。label:你想显示在静态控件中的文本。pos:一个wx.P...

weixin_39683025的博客 1136

VB摄像头监控

该VB模块可对摄像头捕获的画面进行录像等,可在创建的窗口进行控制

wxpython日期控件_使用wxpython控件在面板中的位置

你忘了告诉你的面板是什么尺寸的。如果将self.SetSizer(topsizer)添加到类的__init__的末尾,它将如您所期望的那样工作。在以下是完整的可运行版本:import wxclass Panelchoose(wx.Panel):"""panel for calculating separately without saving"""def __init__(self ,*args,...

weixin_39841136的博客 158

wxPython--基础组件-文本框样例

#-*- coding:utf-8 -*- """ ############################################# StaticText 参数说明 --即 label parent: -- 父窗口部件。 id: -- 标识符。使用-1可以自动创建一个唯一的标识。 label: -- 你想显示在静态控件中的文本。 pos: -- 一个wx.Point或一个

xxb2008的专栏 1万+

简单的python3 弹出窗口 选择日期的程序

简单的python3 弹出窗口 选择日期的程序,还可以设计窗口后面图片

Jamespan21的博客 1272

wxPython DatePicker 及日期计算踩坑记录

这一次是在做backtrader的回测的过程中,试图用窗口界面来快速进行多时间段回测。当前选用的是wxPython做窗口界面,踩了好多坑。

AouSdu 1372

wxPython中wx.adv.DatePickerCtrl用法

wx.adv.DatePickerCtrl是一个日期选择组件,支持键盘手工录入日期和弹出日历窗口选择日期两种方式。

MissYuanxi的博客 811

实战wxPython:034 - 基本控件之进度条Gauge

在GUI程序中,我们我们常常使用一个进度条来直观地显示某一件事情的进度。在wxPython中提供类wx.Gauge来实现这个功能。wx.Gauge是一个水平或者垂直的用来显示进度(通常是时间的进度)的控件。它不产生任何命令事件。 wx.Gauge支持两种工作模式:确定进度和不确定进度。并可以在这两种模式之间进行动态切换。

seniorwizard的专栏 1303

WdatePicker日期控件使用与值获取,以及选择日期完毕触发事件

WdatePicker日期控件使用与值获取,以及选择日期完毕触发事件

u013733643的博客 2276
上一篇: wxpython设计GUI:输入关键字,实现邮箱账号的自动检索功能
下一篇: 使用ControlCAN.dll收发报文功能实现诊断仪与硬件的UDS报文交互
草莓仙生
博客等级 码龄8年 2033粉丝 224原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

草莓仙生

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值