[St...] Posted August 12, 2021 Share Posted August 12, 2021 Hallo, ich möchte ein Texteingabefeld in einem Dialog erstellen, dessen Standardwert von Projekt zu Projekt variiert. So soll der momentan verwendete Wert eines Keywords als Standardwert im Dialog dienen, womit nur noch geringfügige Anpassungen zu tätigen sind. MfG Stefan Link to comment Share on other sites More sharing options...
[Th...] Posted August 13, 2021 Share Posted August 13, 2021 (Fast) Alle Informationen zu benutzerdefinierten Skript-Dialogen finden Sie unter https://connect.gom.com/x/DZ-VAg Um einen Dialog per Skript konfigurieren zu können, empfiehlt sich, einen "Extendable break dialog" anzlegen: Im so erzeugten Skript-Code kann man dann jedes Widget über seinen "Object name" konfigurieren. In diesem Fall über "DIALOG.input.value". Zugriff auf die Keywords erhält man im Skript-Editor über F2 (bzw, RMB -> Insert -> Element Value). In diesem Fall "gom.app.project.user_inspector". Damit ergibt sich für das folgende Skript die Zeile "DIALOG.input.value = gom.app.project.user_inspector" und der gesamte Code könnte so aussehen: # -*- coding: utf-8 -*- import gom DIALOG=gom.script.sys.create_user_defined_dialog (content='<dialog>' \ ' <title>Dialog Title</title>' \ ' <style></style>' \ ' <control id="OkCancel"/>' \ ' <position></position>' \ ' <embedding></embedding>' \ ' <sizemode></sizemode>' \ ' <size height="112" width="217"/>' \ ' <content rows="1" columns="2">' \ ' <widget columnspan="1" rowspan="1" column="0" type="label" row="0">' \ ' <name>label</name>' \ ' <tooltip></tooltip>' \ ' <text>Texteingabe</text>' \ ' <word_wrap>false</word_wrap>' \ ' </widget>' \ ' <widget columnspan="1" rowspan="1" column="1" type="input::string" row="0">' \ ' <name>input</name>' \ ' <tooltip></tooltip>' \ ' <value></value>' \ ' <read_only>false</read_only>' \ ' </widget>' \ ' </content>' \ '</dialog>') # # Event handler function called if anything happens inside of the dialog # def dialog_event_handler (widget): pass DIALOG.handler = dialog_event_handler # the next line was added manually DIALOG.input.value = gom.app.project.user_inspector RESULT=gom.script.sys.show_user_defined_dialog (dialog=DIALOG) Link to comment Share on other sites More sharing options...
Recommended Posts
Please sign in to comment
You will be able to leave a comment after signing in