鼠标接口

python中的Tkinter模块

梦想的初衷 提交于 2019-11-30 14:27:38
Tkinter模块("Tk 接口")是Python的标准Tk GUI工具包的接口.Tk和Tkinter可以在大多数的Unix平台下使用,同样可以应用在Windows和Macintosh系统里.Tk8.0的后续版本可以实现本地窗口风格,并良好地运行在绝大多数平台中。 目录: 1、简单实例 2、Label控件 3、Button控件 4、Entry控件 5、点击按钮输出输入框中的内容 6、Text控件 7、带滚动条的Text 8、Checkbutton多选框控件 9、Radiobutton单选框 10、Listbox控件一 11、Listbox控件二 12、Listbox控件三 13、Listbox四 14、Scale控件 15、Spinbox控件 16、Menu顶层菜单 17、Menu鼠标右键菜单 18、Combobox下拉控件 19、Frame控件 20、表格数据 21、树状数据 22、绝对布局 23、相对布局 24、表格布局 25、鼠标点击事件 26、鼠标移动事件 27、鼠标释放事件 28、进入和离开事件 29、响应所有按键的事件 30、响应特殊按键事件 31、指定按键事件 32、组合按键事件 1、简单实例 下面的代码是创建出一个窗口,其他的操作就在这个平台上进行。执行之后会在桌面弹出一个窗口,窗口的标题就是代码中设置的win.title。这里说一下,我使用的版本是python3

Qt绘图之QGraphicsScene QGraphicsView QGraphicsItem详解

≡放荡痞女 提交于 2019-11-30 00:17:51
Graphics View提供了一个界面,它既可以管理大数量的定制2D graphical items,又可与它们交互,有一个view widget可以把这些项绘制出来,并支持旋转与缩放。这个柜架也包含一个事件传播结构,对于在scene中的这些items,它具有双精度的交互能力。Items能处理键盘事件,鼠标的按,移动、释放、双击事件,也可以跟踪鼠标移动。Graphics View使用BSP树来提供对item的快速查找,使用这种技术,它可以实时地绘制大规模场景,甚至以百万items计。Graphics View在Qt 4.2中被引用,它替代了它的前辈QCanvas。 Graphics View的体系结构 Graphics View提供的是一种类似于Qt model-view的编程。多个views可以监视同一个场景,而场景包含多个具有多种几何外形的items。 场景 QGraphicsScene 表示Graphics View中的场景,它有以下职责: 为管理大量的items提供一个快速的接口。 传播事件到每个item。 管理item的状态,例如选择,焦点处理。 提供未经变换的渲染功能,主要用于打印。 场景作为QGraphicsItem对象的容器。通过调用QgraphicsScene::addItem()把这些Items加入到场景中。可以使用众多的查找函数来获取特定的items

Tkinter最佳实践(半小时)

橙三吉。 提交于 2019-11-29 22:18:49
概述: 简介 Tkinter模块("Tk 接口")是Python的标准Tk GUI工具包的接口.Tk和Tkinter可以在大多数的Unix平台下使用,同样可以应用在Windows和Macintosh系统里.Tk8.0的后续版本可以实现本地窗口风格,并良好地运行在绝大多数平台中。 目的: 网络上对于Tinker都是比较散乱的介绍,需要花费大量时间理清楚,实际上我发现理解Tkinter的就很简单的事件,一般包括界面的组织,控件的学习,事件的绑定。窗口间的通讯。 x  2: 代码链接:https://gitee.com/dgwcode/an_example_of_py_learning/tree/master/language_python/LearTinker 入门: 基本窗口绘制:   win.geometry('600x800+500+50'); x 必须为小写字母x import tkinter; # 创建主窗口 win=tkinter.Tk(); win.title("HI Tkinker"); win.geometry('600x800+500+50'); # 进入消息循环,可以写控件 ... win.mainloop();    布局 绝对布局place: 参数 anchor: 组件对齐方式;n, ne, e, se, s, sw, w, nw, or center ; (

设计模式(一)--工厂模式

那年仲夏 提交于 2019-11-29 21:25:44
设计模式 - (一)工厂模式 简单工厂模式 工厂模式 抽象工厂模式 今天看到一个容易理解的工厂模式例子,把它搬过来了,供大家参考。 下面例子中鼠标,键盘,耳麦为产品,惠普,戴尔为工厂。 简单工厂模式 简单工厂模式不是 23 种里的一种,简而言之,就是有一个专门生产某个产品的类。 比如下图中的鼠标工厂,专业生产鼠标,给参数 0,生产戴尔鼠标,给参数 1,生产惠普鼠标。 工厂模式 工厂模式也就是鼠标工厂是个父类,有生产鼠标这个接口。 戴尔鼠标工厂,惠普鼠标工厂继承它,可以分别生产戴尔鼠标,惠普鼠标。 生产哪种鼠标不再由参数决定,而是创建鼠标工厂时,由戴尔鼠标工厂创建。 后续直接调用鼠标工厂.生产鼠标()即可 抽象工厂模式 抽象工厂模式也就是不仅生产鼠标,同时生产键盘。 也就是 PC 厂商是个父类,有生产鼠标,生产键盘两个接口。 戴尔工厂,惠普工厂继承它,可以分别生产戴尔鼠标+戴尔键盘,和惠普鼠标+惠普键盘。 创建工厂时,由戴尔工厂创建。 后续工厂.生产鼠标()则生产戴尔鼠标,工厂.生产键盘()则生产戴尔键盘。 假设我们增加耳麦这个产品,则首先我们需要增加耳麦这个父类,再加上戴尔耳麦,惠普耳麦这两个子类。 之后在PC厂商这个父类中,增加生产耳麦的接口。最后在戴尔工厂,惠普工厂这两个类中,分别实现生产戴尔耳麦,惠普耳麦的功能。 以上。 来源: https://blog.csdn.net

PowerDesigner 使用教程(很具体,很实用)

佐手、 提交于 2019-11-29 15:33:41
原文地址为: PowerDesigner 使用教程(很具体,很实用) 1、PowerDesigner 使用教程 从今日开始,每天一部分内容,在每个工作日,争取让大家天天都有的看,每天内容不会太多。 有错误的地方还请大家指正。 PowerDesigner简介   PowerDesigner是Sybase公司的CASE工具集,使用它可以方便地对管理信息系统进行分析设计,它几乎包括了数据库模型设计的全过程。利用PowerDesigner可以制作数据流程图、概念数据模型、物理数据模型,可以生成多种客户端开发工具的应用程序,还可为数据仓库制作结构模型,也能对团队设计模型进行控制。它可与许多流行的数据库设计软件,例如:PowerBuilder,Delphi,VB等相配合使用来缩短开发时间和使系统设计更优化。 PowerDesigner主要包括以下几个功能部分:   (1) DataArchitect 这是一个强大的数据库设计工具,使用DataArchitect可利用实体-关系图为一个信息系统创建"概念数据模型"-CDM(Conceptual Data Model)。并且可根据CDM产生基于某一特定数据库管理系统(例如:Sybase System 11)的"物理数据模型"-PDM(Physical Data Model)。还可优化PDM

Java基础知识笔记-12-事件处理

巧了我就是萌 提交于 2019-11-29 15:13:09
Java基础知识笔记-12-事件处理 学习组件除了要熟悉组建的属性和功能外,一个更重要的方面是学习怎样处理组建上发生的界面事件,当用户在文本框中输入文本后按回车,单击按钮,在一个下拉式列表中选择一个条目进行一个条目等操作时,都发生界面事件,例如,用户单击一个确定或者取消的按钮,程序可能需要做出不同的处理。 1 事件处理模式基础 任何支持GUI的操作环境都要不断地监视按键或点击鼠标这样的事件。操作环境将 这些事件报告给正在运行的应用程序。如果有事件产生,每个应用程序将决定如何对它们做出响应。在Visual Basic这样的语言中, 事件与代码之间有着明确的对应关系。程序员对相关的特定事件编写代码,并将这些代码放置在过程中,通常人们将它们称为事件过程(event procedure) 例如,有一个名为HelpButton的Visual Basic按钮有一个与之关联的HelpButton_Click事件过程。这个过程中的代码将在点击按钮后执行。每个Visual Basic的GUI组件都响应一个固定的事件集,不可能改变Visual Basic组件响应的事件集。 另一方面,如果使用像原始的C这样的语言进行事件驱动的程序设计,那就需要编写代 码来不断地检查事件队列, 以便査询操作环境报告的内容(通常这些代码被放置在包含很多switch语句的循环体中) 。显然,这种方式编写的程序可读性很差

006USB设备驱动

纵然是瞬间 提交于 2019-11-29 05:53:21
一、 USB驱动程序之概念介绍(第十七课/第一节) 现象: 在WINDOWS下,把USB设备接到PC机上: 右下角会弹出"发现什么USB新设备"。如发现"android phone"。 跳出一个对话框,提示安装驱动程序。 问1:既然还没有"驱动程序",为何能知道是"android phone"? 答1:Windows里已经有了USB的总线驱动程序,接入USB设备后,是"总线驱动程序"知道你是"android phone"。提示你安装的是"设备驱动程序"。 USB总线驱动程序负责:识别USB设备,给USB设备找到对应的驱动程序。 问2:USB设备种类非常多,为什么一接入电脑,就能识别出来? 答2:PC和USB设备都得遵守一些规范。比如:USB设备接入电脑后,PC机就会发出"你是什么?" USB设备就必须回答"我是xxx"。 USB总线驱动程序会发出某些命令想获取设备信息(描述符),USB设备必须返回(描述符)给PC机。 问3:PC机上接有非常多的USB设备,怎么分辨它们? 答3:USB接口只有四根线:5V,GND,D-,D+ 每一个USB设备接入PC机时,USB总线驱动程序都会给它分配一个编号,接在USB总线上的每一个USB设备都有自己的编号(地址),PC机想访问某个USB设备时,发出的命令都含有对应的编号(地址)。 问4:USB设备刚接入PC机时,还没有编号,那么PC机怎么把

一起来画画

隐身守侯 提交于 2019-11-29 03:24:41
知识点: JFrame窗体类关键属性、方法和事件的应用 Canvas画板类的关键方法和事件的应用 窗体菜单栏的创建和层级关系 工具栏、按钮的配合使用 鼠标点击、移动事件的使用 AWT绘图方法的使用 Swing组件: JFrame窗体类 JWindow无边框窗体类 JButton窗体类 JToggleButton按钮类 JMenuBar菜单栏类 JMenu菜单类 JMenuItem菜单项类 Swing事件监听: 鼠标点击 鼠标拖曳 Java技术: Graphics2D绘图类 Java继承 主类、主方法概念 File文件类 Image图片类 Ellipse2D圆形图形类 Rectangle2D方形图形类 1.创建项目和导入资源 在Package Explorer的Other Projects,右键-New-Other-Java Project-next-(输入项目名:一起来画画)Finish; 在项目名上,右键-New-Folder-(选择文件夹:一起来画画,在Folder name输入:lib)Finish; 将外部包DrawUtil.mr.jar复制到lib里,然后在项目名上,右键-Build Path-Configure Build Path-Libraries-Add JARs...-选中"一起来画画/lib/DrawUtil.mr.jar"-OK; 2.编码 1

Qt无边框窗体-最大化时支持拖拽还原

荒凉一梦 提交于 2019-11-28 16:40:19
目录 一、概述 二、效果展示 三、demo制作 1、设计窗体 2、双击放大 四、拖拽 五、相关文章 原文链接: Markdown模板 一、概述 用Qt进行开发界面时,既想要实现友好的用户交互又想界面漂亮,那么自定义界面就必不可少。其中有一个操作就是是我们每一个Qter开发者都要会的,而且是经常进行的。 Qt::FramelessWindowHint这个属性想必大家都使用过,有些同学可能对这个属性很了解,也用的是炉火纯青,今天我们也来说说这个属性。 关于这个无边框属性网上也有一些文章,有些谈论的是bug,当然了这是针对不同os而言,也有些是跟其他第三方库混合使用时的问题。可是问题归问题,想要实现自定义的优秀界面这个属性也是必不可少的。 今天我们就来实现一个无边框窗体最大化时,支持拖拽标题栏进行还原的功能。 无边框窗体支持缩放、移动这些不属于本篇文章的内容,本篇文章主要讲解怎么实现最大化时拖拽标题栏进行还原窗体,本篇文章的代码依赖于博主之前封装的一个拖拽代理类。 二、效果展示 如效果图所示,做了一个简单的事例,双击标题栏窗体最大化,这个时候如果进行标题栏拖拽,当鼠标按下并移动一段距离时窗体恢复normal状态。 恢复normal状态下的窗体仍然支持放大和缩小,有接口可以设置。 三、demo制作 demo的制作过程还是比较简单的,分为如下几步 1、设计窗体

Qt绘图之QGraphicsScene QGraphicsView QGraphicsItem详解

亡梦爱人 提交于 2019-11-28 02:43:02
Graphics View提供了一个界面,它既可以管理大数量的定制2D graphical items,又可与它们交互,有一个view widget可以把这些项绘制出来,并支持旋转与缩放。这个柜架也包含一个事件传播结构,对于在scene中的这些items,它具有双精度的交互能力。Items能处理键盘事件,鼠标的按,移动、释放、双击事件,也可以跟踪鼠标移动。Graphics View使用BSP树来提供对item的快速查找,使用这种技术,它可以实时地绘制大规模场景,甚至以百万items计。Graphics View在Qt 4.2中被引用,它替代了它的前辈QCanvas。 Graphics View的体系结构 Graphics View提供的是一种类似于Qt model-view的编程。多个views可以监视同一个场景,而场景包含多个具有多种几何外形的items。 场景 QGraphicsScene 表示Graphics View中的场景,它有以下职责: 为管理大量的items提供一个快速的接口。 传播事件到每个item。 管理item的状态,例如选择,焦点处理。 提供未经变换的渲染功能,主要用于打印。 场景作为QGraphicsItem对象的容器。通过调用QgraphicsScene::addItem()把这些Items加入到场景中。可以使用众多的查找函数来获取特定的items