您的位置:首页 > 游戏 > 手游 > PythonStudio 控件使用常用方式(二十七)TActionList

PythonStudio 控件使用常用方式(二十七)TActionList

2025/3/11 1:21:16 来源:https://blog.csdn.net/gxchai/article/details/141240709  浏览:    关键词:PythonStudio 控件使用常用方式(二十七)TActionList

PythonStudio是一个极强的开发Python的IDE工具,官网地址是:https://glsite.com/ ,在官网可以下载最新版的PythonStudio,同时,在使用PythonStudio时,它也能及时为用户升到最新版本。它使用的是Delphi的控件,常用的内容是与Delphi一致的。但是相关文档并一定完整。现在我试试能否逐步把它的控件常用用法写一点点,也作为PythonStudio的参考。

从1.2.1版开始,PythonStudio又增加了很多新的控件。

TActionList原来就有,但是我觉得有必要写一下。先说什么是Action,Action实际上也是一段代码,可以从不同的位置调用,比如有一段完成文本复制功能的代码,它可以从菜单中调用,从按钮中调用,从快捷键CTRL+C调用等,这些调用的方式,指向的是同一段代码,这段代码也就是一个Action,而从不同的位置调用,则是各个控件的Action属性来进行指向。

这样一来,TActionList也就容易理解了,它是集中存放多个Action的控件。它和TImgeList一样,是不显示的。

在这里插入图片描述

组件位置

TActionList 位于 Standard下

常用方式

添加Action

或键点击TActionList控件,选择Action List Editor,或双击TactionList,可以进入编辑器,点击第一个图标,添加Action

添加Action的事件

双击对象树中,ActionList下的Action,如上图中的Action1,则可以添加这个Action的具体功能
如:

    def __init__(self, owner):self.ImageList1 = ImageList(self)self.ActionList1 = ActionList(self)self.Button1 = Button(self)self.LoadProps(os.path.join(os.path.dirname(os.path.abspath(__file__)), "Unit1.pydfm"))self.ShowHint.OnExecute = self.ShowHintExecutedef ShowHintExecute(self, Sender):ShowMessage("我是Action")

设置Action的常用属性

  • Name:Action名称
  • Caption:Action的标题
    之所以写出来,是因为后面需要使用

设置Action的图标

  • 先添加TImageList控件,在控件中添加图标
  • 在这里插入图片描述
    再在ActionList中,设置Image为 ImageList1
    在这里插入图片描述

再在Action中,设置ImageIndex
在这里插入图片描述
此时,Action已做完,可以由各种控件来调用了
以按钮调用为例

设置按钮

  • Action属性
    将Action设置为刚才做的ShowHint,此时可以发现,按钮的文字、图标均已自动提取到按钮了。
    如果图标没有,可以直接设置Images和ImageIndex
    在这里插入图片描述
    运行窗体后,按按钮就可以完成Action的功能了。
    在这里插入图片描述

常用属性和方法

ActionList的State

在ActionList中的Action能否被执行

  • asNormal: 正常状态,此时动作可以被激活和执行。
  • asSuspended: 动作被暂停,此时动作不能被激活和执行。
  • asSuspendedEnabled: 动作被暂停,但在界面上仍能看到(例如,通常在工具栏中显示为禁用状态)。

ActionList的UpdateAction方法

该方法产生一个Onupdate事件。应用程序通常不调用这个方法,而是由Action参数指定
的行为调用该方法以更新其应用程序。该方法调用行为列表的Onupdate事件处理程序,如果该
事件处理程序更新其行为,则返回True,否则返回False。

Action的ShortCut

设定用什么快捷键来执行Action

其他有问题可以一起去硅量实验室的论坛 https://forum.glsite.com/进行讨论。

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com