저는 Python을 사용하여 프로그래밍 및 GUI 개발에 대한 기초 수업을 가르치고 있으며, 프로그래밍을 처음 접하는 학생들에게 가장 이상적인 해결책은 GUI 개발을 위해 Visual Studio를 사용하는 것입니다.IronPython 및 Visual Studio 2010을 이용한 GUI 개발
C# 및 VB의 GUI 개발 경험은 즐겁지만 IronPython에서도 동일한 작업을 수행 할 수있는 방법을 찾지 못했습니다. Visual Studio 도구가 포함 된 IronPython 2.7.1을 설치하고 WPF IronPython 프로젝트를 만들었습니다.
VB 및 C#과 마찬가지로 WPF 양식 디자이너를 사용할 수 있지만 GUI 요소에 액세스 할 수있는 편리한 방법 (예 : 학생에게 이해하기 쉬운 방법)을 찾을 수 없습니다. 예를 들어 VB에서는 요소의 이름을 기준으로 요소를 참조 할 수 있으며 요소 내의 속성을 수정할 수 있습니다.
import wpf
from System.Windows import Application, Window
class MyWindow(Window):
def __init__(self):
wpf.LoadComponent(self, 'WpfApplication3.xaml')
def Button_Click(self, sender, e):
#This is the only way I could find in which I can
#access an element and modify its properties
self.Content.Children[1].Text += 'Hello World\n'
if __name__ == '__main__':
Application().Run(MyWindow())
는 내가하려고 할 때마다 GUI 요소의 이름 및 Visual Studio 충돌하지 않는 것으로 나타났습니다 : 나는 IronPython의 (나는 학생들에게 보여주기 위해 계획하지 않는)와 함께 할 수있는 최선은 다음이다 요소 이름을 지정하기 위해 XAML을 수동으로 수정합니다. 다음은 버튼과 텍스트 영역이있는 간단한 프레임에 대해 생성 된 XAML입니다.
<Window
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
Title="WpfApplication3" Height="300" Width="300">
<Grid>
<Button Content="Button" Height="23" HorizontalAlignment="Left" Margin="103,226,0,0" VerticalAlignment="Top" Width="75" Click="Button_Click" />
<TextBox Height="182" HorizontalAlignment="Left" Margin="24,21,0,0" VerticalAlignment="Top" Width="237" />
</Grid>
</Window>
학생들에게이 작업을보다 쉽게 해주는 데 도움이 될만한 정보가 있습니다. 또한 Visual Studio와 유사한 경험을 제공하는 Python GUI 개발에 대한 다른 제안에 대해서도 열려 있습니다.
Qt 디자이너에서 PyQt4를 사용하면 Visual Studio를 사용하는 것보다 훨씬 쉽고 가볍고 간단하다는 것을 알았습니다. Visual Studio를 몇 년 동안 사용해 보았지만 꽤 부 풀었습니다. – Blender