# dlgappdemo - a demo of a dialog application. # This is a demonstration of both a custom "application" module, # and a Python program in a dialog box. # # NOTE: You CAN NOT import this module from either PythonWin or Python. # This module must be specified on the commandline to PythonWin only. # eg, PythonWin /app dlgappdemo.py from pywin.framework import dlgappcore, app import win32ui import sys class TestDialogApp(dlgappcore.DialogApp): def CreateDialog(self): return TestAppDialog() class TestAppDialog(dlgappcore.AppDialog): def __init__(self): self.edit = None dlgappcore.AppDialog.__init__(self, win32ui.IDD_LARGE_EDIT) def OnInitDialog(self): self.SetWindowText('Test dialog application') self.edit = self.GetDlgItem(win32ui.IDC_EDIT1) print("Hello from Python") print("args are:", end=' ') for arg in sys.argv: print(arg) return 1 def PreDoModal(self): sys.stdout = sys.stderr = self def write(self, str): if self.edit: self.edit.SetSel(-2) # translate \n to \n\r self.edit.ReplaceSel(str.replace('\n','\r\n')) else: win32ui.OutputDebug("dlgapp - no edit control! >>\n%s\n<<\n" % str ) app.AppBuilder = TestDialogApp if __name__=='__main__': import demoutils demoutils.NeedApp()