0

IronPython の Windows フォームに TextBox コントロールを追加するコードがいくつかあります。フォームに OpenFileDialog ( FileDialogClass の ms doc へのリンク) コントロールを追加する方法を知りたいです。私が使用しなければならない python の作業実装は、鉄の python でのみ動作します。.Net オブジェクトの代わりに py gui ライブラリを試すと、作業中のシステムがクラッシュします。

コード

import clr
clr.AddReference('System.Windows.Forms')
clr.AddReference('System.Drawing')
from System.IO import Directory, Path
from System.Windows.Forms import (
DialogResult, MessageBox, MessageBoxButtons, MessageBoxIcon, OpenFileDialog
)


from System.Drawing import Point
from System.Windows.Forms import Application, Button, Form, OpenFileDialog, Panel, TextBox

#from documentreader import DocumentReader, XmlException

class SimpleTextBoxForm(Form):
    def __init__(self):
        self.Text= "Simple TextBox Example"

        self.Width = 500
        self.Height = 600

        self.textbox = TextBox()
        self.textbox.Text = "Set Parameter"
        self.textbox.Location = Point(25, 75)
        self.textbox.Width = 150

        self.button1 = Button()
        self.button1.Text = 'Press Me'
        self.button1.Location = Point(25, 125)
        self.button1.Click += self.getText

        #get filename from file chooser
        self.openFileDialog = OpenFileDialog()
        #self.mainForm = mainForm
        #self.openFileDialog.Filter = filter
        #self.openFileDialog.Title = self.title
        self.openFileDialog.Location = Point(125,55)

        self.AcceptButton = self.button1
        self.Controls.Add(self.textbox)
        self.Controls.Add(self.button1)
        self.Controls.Add(self.openFileDialog) ## if this line is commented out a form with TextBox is displayed

    def getText(self, sender, event):
        self.Text1 = self.textbox.Text
        print(self.Text1)


form = SimpleTextBoxForm()
Application.Run(form)

戻る

type error: No method matches given arguments for Add

望ましい動作

Windows フォームに表示されるダイアログ ボックスを表示します。

4

0 に答える 0