Страница 1 из 1
Поменять picture элементу STRING
Добавлено: 17 Декабрь 2007, 18:36
AnDS
Вот динамически создал create:string
PROP:Use сделал, пишу:
feq{prop:text}=pictvalue
естественно, на экране вместо текста переменной с форматом pictvalue само значение pictvalue
а вот как динамически формат менять?
Добавлено: 17 Декабрь 2007, 18:59
OVV
Может оператор FORMAT спасет?
Добавлено: 17 Декабрь 2007, 19:10
AnDS
OVV писал(а):Может оператор FORMAT спасет?
Не, ты понимаешь, FORMAT - это хорошо, но у меня USE-переменная у STRING прописана. Хочется, что бы при изменении переменной, значение на экране менялось автоматически, а не через PROP:TEXT
Добавлено: 18 Декабрь 2007, 0:17
Admin
А по чему оно должно меняться? По моему ты сам его ДОЛЖЕН менять...
А вот то что тебе хотелось я понял. Как и сказали, юзай FORMAT
Добавлено: 18 Декабрь 2007, 8:59
AnDS
Admin писал(а):А по чему оно должно меняться? По моему ты сам его ДОЛЖЕН менять...
потому, что должно.
я меняю значение переменной, а display отображает это изменение на экране.
Вот:
Код: Выделить всё
STRING(@s60),AT(145,47,165,10),USE(loc:JQ:ActionName),TRN,FONT(,,COLOR:Blue,,CHARSET:ANSI), #ORIG(?String3)
При изменении loc:JQ:ActionName, эти изменения отображаются автоматически (ну, display(?loc:JQ:ActionName) надо использовать например)
Admin писал(а):
А вот то что тебе хотелось я понял. Как и сказали, юзай FORMAT
Какой формат? Я хочу поменять @s60 на @s100, например.
Или вообще на @N020
Само значение формата хранится в переменной типа STRING
?loc:JQ:ActionName{prop:text}=formatstring
Ну, может ты имеешь ввиду prop:format? Так этот проп вроде для List используется?
Мне кажется, что мы друг-друга не понимаем.

Добавлено: 18 Декабрь 2007, 9:57
Admin
Может и я туплю... х.з.
Вот так попробовал - все работает.
Код: Выделить всё
PROGRAM
MAP
END
LOC:Format STRING(10)
LOC:String STRING(100)
DIN:String EQUATE(10)
Window WINDOW('Caption'),AT(,,191,122),FONT('MS Sans Serif',8,,FONT:regular),CENTER,GRAY,DOUBLE
ENTRY(@s100),AT(69,18,47,11),USE(LOC:Format)
BUTTON('Change format'),AT(47,84,97,14),USE(?Button1)
END
CODE
LOC:Format = '@S10'
OPEN(Window)
CREATE(DIN:String,CREATE:ENTRY)
SETPOSITION(DIN:String,27,38,137,12)
(DIN:String){PROP:Text} = '@S2'
(DIN:String){PROP:Use} = LOC:String
(DIN:String){PROP:Hide} = FALSE
ACCEPT
CASE ACCEPTED()
OF ?Button1
DIN:String{PROP:Text} = LOC:Format
END
END
MESSAGE(LOC:String)
CLOSE(Window)
Добавлено: 18 Декабрь 2007, 10:06
ru_alex
Для создания таких строк нужно юзать CREATE:sstring а не CREATE:string по-моему.
Добавлено: 18 Декабрь 2007, 16:06
AnDS
Спасибо. Действительно SSTRING