这篇文章教你开发一个Python桌面应用程序(这篇文章教你开发一个python桌面应用程序英语)

点击“了解更多”获取工具下载

IronPython和最新的Visual Studio 2019使这一切成为可能,它们使Python桌面应用程序可以与WinForms控件一起使用。 更重要的是,Telerik UI For WinForms套件拥有现成的一些功能来帮助您实现想要的功能!

Iron Python

IronPython是Python强大的开源版本,它是在Microsoft .NET框架上运行的Python编程语言的改编,IronPython可以使用.NET Framework和Python库,而其他.NET语言也可以轻松使用Python代码。

安装最新版本的IronPython之后,您可以打开Visual Studio 2019,该Studio带有用于“ IronPython Windows Forms Application”的内置模板项目,并创建您的第一个应用程序。

这篇文章教你开发一个Python桌面应用程序(这篇文章教你开发一个python桌面应用程序英语)这篇文章教你开发一个Python桌面应用程序(这篇文章教你开发一个python桌面应用程序英语)

如何将Telerik RadGridView与现代Fluent主题集成到您的应用程序中

首先,您需要安装Telerik UI for WinForms UI组件套件 – 您可以从此处点击下载,然后将所需的Telerik程序集添加到项目文件夹中,以使用WinForms的RadGridView、FluentTheme和RadChartView(spoiler alert,稍后将需要它)控件。

这篇文章教你开发一个Python桌面应用程序(这篇文章教你开发一个python桌面应用程序英语)

要在应用程序中引用二进制文件,请导入clr库,然后使用addReference方法。 在这里,您可以看到如何添加示例应用程序所需的参考和用法。

import clrimport randomclr.AddReference('System.Drawing')clr.AddReference('System.Windows.Forms')clr.AddReference('Telerik.WinControls')clr.AddReference('Telerik.WinControls.UI')clr.AddReference('Telerik.WinControls.ChartView')clr.AddReference('Telerik.WinControls.Themes.Fluent')clr.AddReference('TelerikCommon')clr.AddReference('Telerik.WinControls.GridView')from System.Drawing import *from System.Windows.Forms import *from Telerik.WinControls import *from Telerik.WinControls.UI import *from Telerik.Charting import *from Telerik.WinControls.Themes import *

现在,让我们看一下如何添加radGridView控件,其中包含一堆不同的列。

#Define RadGridViewself.radGrid = RadGridView() self.radGrid.BestFitColumns()self.radGrid.ForeColor = Color.Blackself.radGrid.Dock = DockStyle.Fill #Define Columnsself.decimalColumn = GridViewDecimalColumn()self.textBoxColumn = GridViewTextBoxColumn()self.colorColumn = GridViewColorColumn()self.checkBoxColumn = GridViewCheckBoxColumn()self.ratingColumn = GridViewRatingColumn()self.decimalColumn.HeaderText = "DecimalColumn"self.textBoxColumn.HeaderText = "Text"self.colorColumn.HeaderText = "ColorColumn"self.checkBoxColumn.HeaderText = "CheckBoxColumn"self.ratingColumn.HeaderText = "RatingColumn"self.radGrid.Columns.Add(self.decimalColumn)self.radGrid.Columns.Add(self.textBoxColumn)self.radGrid.Columns.Add(self.colorColumn)self.radGrid.Columns.Add(self.checkBoxColumn)self.radGrid.Columns.Add(self.ratingColumn)self.Controls.Add(self.radGrid)#Populate Rowsfor index in range(10):self.radGrid.Rows.Add(index, "Sample Text " str(index), Color.FromArgb(random.randint(1,255), random.randint(1,255), random.randint(1,255)), CheckState.Checked, random.randint(1,100))

该结果是一个radGridView,它具有以下列:GridViewDecimalColumn,GridViewTextBoxColumn,GridViewColorColumn,GridViewCheckBoxColumn,GridViewRatingColumn。

这篇文章教你开发一个Python桌面应用程序(这篇文章教你开发一个python桌面应用程序英语)

如图中所示,如果您想将主题应用于控件,则可以如此简单地完成。

fluent = FluentTheme()self.ThemeName = fluent.ThemeName self.radGrid.ThemeName = fluent.ThemeName

订阅事件并实现您的业务逻辑

这是创建RadButton控件并订阅其Click事件的示例。

#Define RadButton1self.myButton1 = RadButton()self.myButton1.Text = "RadButton1"self.myButton1.Click = self.OnButton1Clickself.Controls.Add(self.myButton1)

然后,您将必须定义OnButtonClick逻辑。

def OnButton1Click(self, sender, args):#TODO OnClick logic

现在,我们使用上一个示例中的radGridView来看一个更复杂的事件相关示例。 我们将在CellFormatting事件中实现一些逻辑,以便用不同的颜色填充GridViewRatingColumn中的单元格。 Rating单元内的值可以在0到100之间,如果值<50,我们将用红色填充这些单元,否则我们将使用Aqua颜色。 我们可以使用以下代码实现此结果:

def OnRadGridCellFormatting(self, sender, args):if args is not None :if args.Column.HeaderText == "RatingColumn" :if args.CellElement.RowInfo.Cells[4].Value is not None :if args.CellElement.Value > 50 : args.CellElement.DrawFill = Trueargs.CellElement.ForeColor = Color.Blueargs.CellElement.NumberOfColors = 1args.CellElement.BackColor = Color.Aquaelse :args.CellElement.DrawFill = Trueargs.CellElement.ForeColor = Color.Yellowargs.CellElement.NumberOfColors = 1args.CellElement.BackColor = Color.Redelse :args.CellElement.ResetValue(LightVisualElement.DrawFillProperty, ValueResetFlags.Local)args.CellElement.ResetValue(LightVisualElement.ForeColorProperty, ValueResetFlags.Local)args.CellElement.ResetValue(LightVisualElement.NumberOfColorsProperty, ValueResetFlags.Local)args.CellElement.ResetValue(LightVisualElement.BackColorProperty, ValueResetFlags.Local)

CellFormatting最终结果是这样的:

这篇文章教你开发一个Python桌面应用程序(这篇文章教你开发一个python桌面应用程序英语)

RadChartView的Little Bonus Setup 示例

正如在radGridView示例中看到的那样,使用Telerik控件非常容易,我们来看另一个使用BarSeries设置radChartView控件的示例。

#Define RadChartViewself.chartView = RadChartView()self.chartView.Size = Size(290, 160)self.chartView.Dock = DockStyle.Fill#Define BarSeries and CategoricDataPointsself.barSeries = BarSeries("Performance", "RepresentativeName")self.barSeries.Name = "Q1"self.categoricDataPoint1 = CategoricalDataPoint(177, "Harley")self.categoricDataPoint2 = CategoricalDataPoint(128, "White")self.categoricDataPoint3 = CategoricalDataPoint(143, "Smith")self.categoricDataPoint4 = CategoricalDataPoint(111, "Jones")self.barSeries.DataPoints.Add(self.categoricDataPoint1)self.barSeries.DataPoints.Add(self.categoricDataPoint2)self.barSeries.DataPoints.Add(self.categoricDataPoint3)self.barSeries.DataPoints.Add(self.categoricDataPoint4) self.chartView.Series.Add(self.barSeries)self.Controls.Add(self.chartView)

结果与您期望的Telerik UI for WinForms应用程序一样。

这篇文章教你开发一个Python桌面应用程序(这篇文章教你开发一个python桌面应用程序英语)


版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

(0)
上一篇 2023年4月23日 上午10:23
下一篇 2023年4月23日 上午10:39

相关推荐

  • 最新进度计划

    最新进度计划 随着我们团队的不断发展,最新的进度计划已经出台。这一计划旨在确保我们的工作能够按时完成,并能够满足客户和公司的期望。 在这个计划中,我们将更加注重细节和精度。我们将审…

    科研百科 2024年5月25日
    51
  • 酒店项目管理系统

    酒店项目管理系统 酒店项目管理系统是一种用于管理酒店项目的工具,能够帮助酒店管理者更好地协调和管理项目,提高项目效率和质量。本文将介绍酒店项目管理系统的优点和用途。 一、酒店项目管…

    科研百科 2024年7月15日
    44
  • 有关科研项目法律意见书有关科研项目法律意见书

    科研项目法律意见书 科研项目的法律问题一直是学术界和法律界关注的重点。作为科研项目的法律意见书,它不仅是科研项目的重要组成部分,也是保证科研项目合法、顺利进行的重要手段。本文将介绍…

    科研百科 2024年9月10日
    21
  • 轻代码平台

    轻代码平台: 让软件开发更加简单 随着信息技术的不断发展,轻代码平台已经成为了软件开发领域的一个热门话题。什么是轻代码平台呢?轻代码平台是一种基于可视化编程的软件开发工具,通过简单…

    科研百科 5天前
    0
  • 暨南大学经费2024

    暨南大学经费2024:创新与变革的力量 作为广东省内一所著名的综合性大学,暨南大学在近年来取得了长足的进步。尤其是2021年,学校成为了全国首批“双一流”建设高校之一,这也为学校未…

    科研百科 2024年10月19日
    0
  • 国网白银供电公司举办党建信息化综合管理系统推广应用培训(国网党建信息化综合管理系统网址)

    每日甘肃网讯8月3日上午,国网白银供电公司举办党建信息化综合管理系统推广应用培训,来自该公司各基层单位党(总)支部专兼职政工干事、团支部书记,机关各党支部兼职综合专责共计50余人参…

    科研百科 2023年7月29日
    71
  • 四十年后成了一级学科,中共党史党建学如何回答“大党独有难题”

    中国人民大学成立了国内首家中共党史党建学院,图为学院院长杨凤城接受中央电视台记者采访。 (央视截图/图) 2023年3月19日,国内党史党建界专家学者汇聚中国人民大学,出席该校中共…

    科研百科 2023年9月13日
    129
  • ERP项目如何进行质量管理?紫日软件从三个方面给你讲透(erp项目的质量管理)

    ERP项目如何进行质量管理?紫日软件从三个方面给你讲透。项目质量管理主要包括以下三个方面的内容。 (1)质量策划:就是要识别与之相关的质量标准,并提出如何达到这些质量标准。 (2)…

    科研百科 2024年4月28日
    67
  • 协同办公系统oa(协同 办公系统)

    协同办公系统: 现代企业的必备工具 随着现代企业规模不断扩大,协同办公系统已经成为现代企业必备工具之一。协同办公系统不仅可以提高企业内部的沟通效率,还可以帮助企业更好地管理员工信息…

    科研百科 2024年8月28日
    32
  • 企管宝项目管理软件

    企管宝项目管理软件:企业数字化管理的新选择 随着企业数字化进程的不断加速,项目管理软件已经成为企业数字化管理中不可或缺的一部分。企管宝项目管理软件,作为一种新兴的项目管理软件,为企…

    科研百科 2024年7月27日
    48