- 博客(27)
- 收藏
- 关注
原创 C#, 查找同一个进程显示在任务栏上的多个窗口
有的程序可以打开多个窗口并显示在任务栏上。某些情况下,我们需要找到窗口做些事情时,可以参考下面的代码。
2024-04-09 17:05:40 396
原创 C# 两种方法截取活动窗口屏幕,实现窗体截图
方法1,截屏内容仅包括活动窗口界面,而方法2是从屏幕范围取图,截屏内容会包括屏幕上所有内容。例如有一些程序在桌面顶层显示半透明的悬浮窗,用方法2截屏就会包括这些内容,并不是单纯的活动窗口内容。方法1,对一些有渐变效果的边框,截图会包括边框范围。方法2则可以把截屏范围限制在程序窗口,截屏效果更好。win32 api调用网上都有,这里就不再重复了。
2024-04-09 11:42:44 1944
原创 python argparse解析参数
5. arg2不使用默认值。用法比较简单,直接看代码。2. arg1使用长参数。3. arg1使用短参数。
2023-10-19 08:32:29 185
原创 pygame - 贪吃蛇小游戏
蛇每吃掉一个身体块,蛇身就增加一个长度。为了统一计算,界面的尺寸和游戏元素的位置都是身体块长度的倍数。1. 上下左右方向键(或者ASDW键)控制蛇的移动方向。图片文件,复制到项目的asset\img目录下。2. 空格键暂停和继续。
2023-09-29 20:06:22 391
原创 c# winform程序,DispatcherTimer被调用延迟,响应间隔长
c# winform程序,DispatcherTimer被调用延迟,响应间隔长最近修改的问题,winform界面上两个控件的数据刷新,用DispatcherTimer定时刷新,但是在某些机器上的实际刷新时间间隔远远大于设置时间。既然MSDN已经说了,不保证计时器在时间间隔发生时准确执行。两个控件数据的刷新在程序不同层级,所以分别用了两个方法。
2023-09-28 12:08:48 803
原创 launch pycharm, failed to load JVM DLL
First, make sure all software you install are consistent platform(e.g. pycharm x64 + jdk x64). There are 3 possible reasons. Please try below items one by one. 1. install JDK, create JAVA_HOME variable.2. install Microsoft Visual C++ 2010 Redistributable P
2023-08-26 09:09:46 174
原创 [Tkinter 101] 13 pyzbar解析二维码
解析出来的数据为list对象。如果图片上有多个二维码,则图像与list无法对应。所以,按照二维码从左到右的图像位置排序。首先在文件选择对话框,选择二维码文件。把解析出来的数据显示在UI上。然后点击按钮开始解析二维码。
2023-08-14 17:55:00 164
原创 [Tkinter 101] 12 Label使用StringVar更新文字,并设置长字符串自动换行
2. 绑定lambda函数,设置wraplength,即可实现字符串根据控件宽度自动换行。当程序运行,需要更新信息时,直接修改字符串变量,即可更新Label的内容。1. Label使用字符串变量自动更新文字。
2023-08-12 18:05:02 962
原创 [Tkinter 101] 11 qrcode字符串生成二维码,Button click事件,创建多级目录保存图片
根据文本框的字符串,创建二维码。创建多级子目录,保存二维码文件。文件名以时间戳命名。
2023-08-11 17:48:37 113
原创 [Tkinter 101] 10 文本输入框(Text)添加滚动条(Scrollbar)
Tkinter 文本输入框(Text)添加滚动条(Scrollbar)
2023-08-11 12:38:01 1843 1
原创 [Tkinter 101] 09 PIL 图片拉伸,自动缩放,调整图片填满空间
使用Pillow模块,自动改变图片大小。原理为:设置图片为Label背景图,Label绑定处理事件的函数。拖动改变窗口尺寸,随着Label尺寸的改变,在事件函数中修改图片尺寸
2023-08-11 11:27:24 1964
原创 [Tkinter 101] 07 Python运行时检查系统显示语言,支持多语言
很多时候,程序需要根据当前系统语言,显示不同的语言资源。这里,我用ini作为资源文件,不同语言资源文件保存在不同的目录下。使用configparser模块解析ini。创建LocHelper类实现输入resource id读取字符串的功能。
2023-08-10 15:44:29 162
原创 [Tkinter 101] 04 添加选项卡tab页签
使用tkinter.ttk模块的Notebook创建一个选项卡式窗口。首先创建notbook,然后在其上添加frame。
2023-08-10 14:51:51 607
原创 [Tkinter 101] 03 清空窗口控件,更新窗口控件
我的程序启动后加载插件,然后根据插件数量更新UI。那么怎样动态刷新UI?首先启动窗口后,再开始一个线程加载数据,最后更新窗口内容。在loading函数中加载数据以及更新UI。当线程结束后,窗口就会更新了。
2023-08-10 12:32:24 990
原创 [Tkinter 101] 02 设置tkinter窗口大小
用winfo_screenwidth()和winfo_screenheight()获取屏幕尺寸,然后通过geometry()设置窗口,参数格式为:"窗口宽x窗口高" 或者 "窗口宽x窗口高+左顶点坐标X+左顶点坐标Y"示例代码设置窗口宽度为屏幕一半:(width / 2 和height / 2)。设置窗口位置在屏幕中间,则左顶点距离屏幕左上角为1/4屏幕宽度距离:(width / 4 和 height / 4)。
2023-08-10 11:40:19 1842
原创 在XMAL中生成自定义类的对象并与控件绑定
自定义类namespace MyClassLibrary{ public class MyClass { public string MyName { get; set; } }}在UI工程添加自定义库的引用在XMAL中创建资源,并与UI控件绑定
2011-07-28 15:06:31 924
原创 Ribbon菜单栏布局和调整大小
设置菜单组的变化顺序。窗口大小调整时,GroupSizeReductionOrder设置多个菜单组的先后顺序,下图显示当逐渐缩小窗口时,菜单的变化 GroupSizeReductionOrder=
2011-07-28 15:03:54 12660 1
原创 两种方法创建WPF目录树TreeView和GridView数据绑定
效果定义数据结构public class DirectoryInformation{ public DirectoryInfo Info { get; set; } public IEnumerable Files { get { return Info.GetFiles();
2011-07-28 14:59:55 4416 2
原创 WPF,Grid划分界面区域
和定义界面中行列的数量, 使用GridSplitter作为分隔线可以调整相连区域的大小,注意GridSplitter也要占用一行或一列。
2011-07-28 14:58:13 2324
原创 VS2010, WPF工程添加图片资源
在WPF工程里添加图片资源,可以按如下操作: 1. 在工程下创建新文件夹2. 把图片放到新建的目录下,在VS项目中右键点击该文件夹,选择添加已有项目3. 添加文件成功4. 如果不显示图片,关闭当前文件编辑窗口,再次打开文件,选择”click here to reload the
2011-07-28 14:55:46 2562
原创 WPF创建无标题栏的窗口和移动无标题栏窗口
1. 设置WindowStyle如下: xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/wi
2011-07-28 14:52:31 2379
转载 C++, explicit
c++中的explicit关键字用来修饰类的构造函数,表明该构造函数是显式的,既然有"显式"那么必然就有"隐式",那么什么是显示而什么又是隐式的呢?如果c++类的构造函数有一个参数,那么在编译的时候就会有一个缺省的转换操作:将该构造函数对应数据类型的数据转换为该类对象,如下面所示
2011-07-26 12:22:12 277
转载 C#, as
val as Type,适用于:val类型是Type;可以隐式转换为Type;可以封箱到Type;如不能转换为Type;则表达式结果为null。 class A{} class B: A{} example 1. A a = new A();B b = a as B; //
2011-07-26 12:21:30 291
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人