Изменение заголовка в Dyalog APL

Я работаю в Dyalog APL версии 17.0, и у меня возникли проблемы с выполнением строки:

SYNTAX ERROR
switch[10] ('CP.B',(⍕zloc),'.Caption')←capt
                                      ∧

capt является вектором символов, а zloc является скалярным числом. Я знаю, что многие люди не используют этот язык, но любая помощь будет оценена по достоинству.


person icicle    schedule 24.04.2020    source источник


Ответы (2)


Предполагая, что вы хотите имитировать выполнение CP.B_.Caption←capt для заданного числа, заменяя подчеркивание, это сработает:

⍎'CP.B',(⍕zloc),'.Caption←capt'

Try it online !

Вы пытаетесь присвоить вектор безымянному вектору символов, что недопустимо в APL. Вместо этого этот код оценивает полное выражение APL.

Однако, если возможно, хранить содержимое CP в виде массива было бы гораздо лучше.

person dzaima    schedule 24.04.2020

Я предполагаю, что вы меняете свойство Caption объекта GUI.

Вы можете сделать это с помощью ⎕WS (свойство Window Set):

('CP.B',⍕zloc) ⎕WS 'Caption' capt
person Adám    schedule 25.04.2020