Chritian W. Geschrieben 18. April 2021 Teilen Geschrieben 18. April 2021 Hallo, ich versuche in einen kombinierten Popup-Node zu erstellen, in welchem neben den Pulldown-Menüs auch noch reelle Zahlen abgefragt werden können. Kann jemand helfen wie ich das Script ändern muss, so dass statt dem Popup unter EingabeString Titel4 ein RealDialog eingeblendet wird? Link zu diesem Kommentar
Manuel Roth Geschrieben 18. April 2021 Teilen Geschrieben 18. April 2021 Nur damit ich es richtig verstehe. Du möchtest anstelle vom Pulldown eine Zahleneingabe verwenden? Eventuell hilft dir diese Seite hier schon weiter. Ansonsten wäre eine Datei mit dem Node noch schön, da ich nicht den ganzen Dialog neu schreiben möchte. (Dialoge sind sowas von ... darfst es dir selbst aussuchen. ) Freundliche Grüsse Manuel Roth _________________________________________________ Vectorworks 2022 SP3 | Architektur | Windows 10 Link zu diesem Kommentar
Chritian W. Geschrieben 19. April 2021 Autor Teilen Geschrieben 19. April 2021 Danke Manuel, soweit konnte ich das integrieren. Es fehlt mir nur noch der Vorgabewert, wie kann ich den angeben? Multidialog.vwx Link zu diesem Kommentar
Manuel Roth Geschrieben 19. April 2021 Teilen Geschrieben 19. April 2021 Versuche es einmal mit vs.CreateEditReal(dialog, 14, 4, 20, width) Die 20 ist der Vorgabewert. Die 4 bezeichnet den Typ. (1 - Real, 2 - Winkel, 3 - Länge, 4 - X-Koordinate, 5 - Y-Koordinate) 2 Freundliche Grüsse Manuel Roth _________________________________________________ Vectorworks 2022 SP3 | Architektur | Windows 10 Link zu diesem Kommentar
Chritian W. Geschrieben 20. April 2021 Autor Teilen Geschrieben 20. April 2021 Am 19.4.2021 um 13:58 schrieb Manuel Roth: Versuche es einmal mit vs.CreateEditReal(dialog, 14, 4, 20, width) Die 20 ist der Vorgabewert. Die 4 bezeichnet den Typ. (1 - Real, 2 - Winkel, 3 - Länge, 4 - X-Koordinate, 5 - Y-Koordinate) Noch mal eine Rückfrage: Ich habe jetzt festgestellt, dass ich zwar die eingegebene Zahl ausgegeben bekomme, jedoch leider im Textformat. Ich vermute es liegt an der im Anhang markierten Zeile, was muss da rein?? Link zu diesem Kommentar
Manuel Roth Geschrieben 20. April 2021 Teilen Geschrieben 20. April 2021 Schau dir mal GetEditReal an. Allgemein findest du alle Befehle, die du in VW verwenden kannst in der Function Reference. Dort sind unter Dialogs - Modern die Befehle für die Dialoge alle zu finden. Freundliche Grüsse Manuel Roth _________________________________________________ Vectorworks 2022 SP3 | Architektur | Windows 10 Link zu diesem Kommentar
Chritian W. Geschrieben 21. April 2021 Autor Teilen Geschrieben 21. April 2021 Also ich habe jetzt verschiedene Eingaben probiert kommen aber nicht drauf. Link zu diesem Kommentar
Manuel Roth Geschrieben 21. April 2021 Teilen Geschrieben 21. April 2021 Versuche einmal. self.v4 = vs.GetEditReal(self.dialog, 14, 4)[1] Freundliche Grüsse Manuel Roth _________________________________________________ Vectorworks 2022 SP3 | Architektur | Windows 10 Link zu diesem Kommentar
Chritian W. Geschrieben 22. April 2021 Autor Teilen Geschrieben 22. April 2021 Den hatte ich auch schon, habe es gerade noch einmal probiert, bekomme folgende Fehlermeldung: Link zu diesem Kommentar
Chritian W. Geschrieben 22. April 2021 Autor Teilen Geschrieben 22. April 2021 Nur nochmal zur Info: nutzen kann ich den Multidialog schon, wenn ich einfach den ausgegebenen Textwert wieder in eine Zahl umwandle aber um Platz zu sparen wäre es schön gewesen, wenn auch ein Zahlenwert ausgegeben wird. Trotzdem Danke für die Tips. Wenn noch jemand einen Hinweis hat, wie man diesen Sachverhalt abschließend lösen kann, dann bitte hier posten. im Anhang noch einmal der aktuelle Stand vom Multi - Popup - Dialog Multidialog.vwx Link zu diesem Kommentar
Chritian W. Geschrieben 27. Juni 2021 Autor Teilen Geschrieben 27. Juni 2021 Ich habe jetzt festgestellt, dass die Eingabewerte in den Popups vervielfältigt werden, sobald man Eingaben in den einzelnen Popups macht. kann man das irgendwie umgehen? Hat jemand eine Idee was da noch hineinprogrammiert werden müsste? Im Originalnode von DomC ist das genauso. Link zu diesem Kommentar
Chritian W. Geschrieben 28. Juni 2021 Autor Teilen Geschrieben 28. Juni 2021 Hallo, ich habe die Lösung von DomC erhalten. im Originalnode „Custom Pulldown“ muss der Teil ab def RunNode ersetzt werden. Wenn man die geänderten Teile dann in die eigenen einbaut. Funktioniert es auch dort. entscheidend sind die Zeilen EnterDialog = 12255 Und in item == EnterDialog: wenn dieser Part hier im Original eingesetzt wird funktioniert es: def RunNode(self): #inputs DialogName = self.Params.sDialog.value[0] title1 = self.Params.sTitle1.value[0] title2 = self.Params.sTitle2.value[0] title3 = self.Params.sTitle3.value[0] pop1 = self.Params.lPopup1.value pop2 = self.Params.lPopup2.value pop3 = self.Params.lPopup3.value width = self.Params.iWidth.value[0] numPopups = 3 EnterDialog = 12255 #script def Dialog_Handler(item, data): self.v1 = vs.GetItemText( self.dialog, 11 ) self.v2 = vs.GetItemText( self.dialog, 12 ) self.v3 = vs.GetItemText( self.dialog, 13 ) if item == EnterDialog: for i in range(len(pop1)): vs.AddChoice( self.dialog, 11, pop1[i], i+1 ) for i in range(len(pop2)): vs.AddChoice( self.dialog, 12, pop2[i], i+len(pop1)+1 ) for i in range(len(pop3)): vs.AddChoice( self.dialog, 13, pop3[i], i+len(pop2)+1 ) def CreateMyDialog(): self.dialog = vs.CreateLayout( DialogName, 0, 'OK', 'Abbrechen' ) dialog = self.dialog vs.CreateStaticText(dialog, 1, 'title1', width) vs.CreateStaticText(dialog, 2, 'title2', width) vs.CreateStaticText(dialog, 3, 'title3', width) vs.CreatePullDownMenu( dialog, 11, width ) vs.CreatePullDownMenu( dialog, 12, width ) vs.CreatePullDownMenu( dialog, 13, width ) vs.SetFirstLayoutItem( dialog, 1 ) vs.SetBelowItem( dialog, 1, 11, 0, 0 ) vs.SetBelowItem( dialog, 11, 2, 0, 0 ) vs.SetBelowItem( dialog, 2, 12, 0, 0 ) vs.SetBelowItem( dialog, 12, 3, 0, 0 ) vs.SetBelowItem( dialog, 3, 13, 0, 0 ) vs.RunLayoutDialog(dialog, Dialog_Handler ) CreateMyDialog() #outputs self.Params.sPopup1.value = self.v1 self.Params.sPopup2.value = self.v2 self.Params.sPopup3.value = self.v3 Link zu diesem Kommentar
Chritian W. Geschrieben 10. Juli 2021 Autor Teilen Geschrieben 10. Juli 2021 Am 21.4.2021 um 23:44 schrieb Manuel Roth: Versuche einmal. self.v4 = vs.GetEditReal(self.dialog, 14, 4)[1] Nach dem ich das mit der Checkbox hinbekommen habe, dachte ich mir ich probiere hier noch einmal. also die Codezeile muss ohne die Zahl hinter dem zweiten Komma eingetragen werden, dann funktioniert es. also in der Form: self.v4 = vs.GetEditReal(self.dialog, 14)[1] Link zu diesem Kommentar
Empfohlene Beiträge
Erstelle ein Benutzerkonto oder melde Dich an, um zu kommentieren
Du musst ein Benutzerkonto haben, um einen Kommentar verfassen zu können
Benutzerkonto erstellen
Neues Benutzerkonto für unsere Community erstellen. Es ist einfach!
Neues Benutzerkonto erstellenAnmelden
Du hast bereits ein Benutzerkonto? Melde Dich hier an.
Jetzt anmelden