NPSAppManaged.switchForm(formid)メソッドの使用に関するいくつかの問題が発生しています。私は、現在のフォームを別のものに切り替えるためにキーハンドラを使用するウェルカムスクリーン(「systemWelcomeScreenForm」を参照)を作成しようとしています。以下のコード例でnpyscreen - FormBaseNewキーハンドラでNPSAppManaged.switchForm(formid)を使用したときに発生するエラー
(playground.pyを参照)、私は単に「CTRL」のユーザ入力を行うことで、この概念をテストしたいのです+「T」「がcreatePlaceholderForm」に現在のフォームを切り替えます。しかし、私はエラー1に表示されるエラーを受け取りました。
playground.py
#!/usr/bin/env python
# encoding: utf-8
# File Name: playground.py
# Author: Jack Winch
# Sys. Version: ALPHA
# Comments:
# =========
# This file has been created so as to experiment with the implementation of a DBMS front-end, using npyscreen.
from npyscreen import *
import sys
# WELCOME SCREEN FORM
# ===================
class systemWelcomeScreenForm(FormBaseNew):
def create(self):
self.add_handlers({"^Q": sys.exit, "^T": self.change_form("createPlaceholderForm")})
self.add(TitleFixedText, name = "openCalDBMS Primary Options Menu", editable=False, relx=4, rely=2, labelColor='STANDOUT')
self.add(TitleFixedText, name = "================================", editable=False, relx=4, rely=3, labelColor="STANDOUT")
self.add(TitleFixedText, name = "Function Keys: CNTRL+Q - Exit System", editable=False, relx=4, rely=44)
self.add(TitleText, name = "Option ===>", relx=4, rely=40, labelColor="STANDOUT", begin_entry_at=13, use_two_lines=False)
def change_form(self, name):
self.parentApp.switchForm(name)
# CREATE PLACEHOLDER FORM
# =======================
class createPlaceholderForm(ActionForm):
def create(self):
self.add(TitleFixedText, name="Test", editable=False, labelColor='STANDOUT', relx=4, rely=2)
def on_ok(self):
self.parentApp.setNextForm("MAIN")
def on_cancel(self):
self.parentApp.setNextForm("MAIN")
class ApplicationHandler(NPSAppManaged):
def onStart(self):
self.addForm('MAIN', systemWelcomeScreenForm, name="openCalDBMS | Welcome Screen", min_columns=120, min_lines=48)
self.addForm('createPlaceholderForm', createPlaceholderForm, name='openCalDBMS | Create Instrumentation Placeholder for Ordered Instruments'$
if __name__ == '__main__':
Application = ApplicationHandler().run()
エラー1: Error experienced when trying to execute the code example above.
エラーフォーマットについての私の謝罪 - 私はトラブルのテキストの書式を持ってきました。
私はnpyscreenのドキュメントを参照し、このサイトを精査してインターネットを検索しましたが、残念ながらこのエラーやnpAppreen.switchForm(formid)の使用方法については何も見つかりませんでした。
あなたの助けがgreatfully感謝し、生成されたエラーのフォーマットについて謝罪されるだろう、
JrDeveloper