Вверх ↑
Этот топик читают: Гость
Ответов: 3851
Рейтинг: 159
#1: 2008-11-26 10:05:40 ЛС | профиль | цитата
элемент счётчик-UpDown не умеет ходить по кругу в отличии счётчика-Counter. Было бы неплохо, если бы при достижении порога происходило некое событие (event), а также чтобы сама кнопа становилась disabled


карма: 0
начавший
0
файлы: 1updown.png [354B] [469]
Администрация
Ответов: 15295
Рейтинг: 1519
#2: 2008-11-26 10:49:27 ЛС | профиль | цитата
Андрей., как правило в задач, решаемых пользователем с помощью некой программы обычно не требуется менять значение сразу от минимума к максимому или наоборот. Ввиду чего гораздо чаще мотая счетчик в одну из сторон пользователь в надежде достичь предел будет перелетать его и выполнять одно(как минимум) лишнее действие, чтобы вернуться назад. Т.е. налицо ухудшение usability интерфейса.

Если же задача переключения минимума на максимум(и наоборот) возникает часто, то нужно ставить элементы типа ScrollBox.

Вообще интересно зачем при круговом обходе запрещать нажатия кнопок Как же такое тогда работать должно?
карма: 27
0
Ответов: 3851
Рейтинг: 159
#3: 2008-11-26 13:47:43 ЛС | профиль | цитата
в том то и дело, что не круговое - то есть щёлкать можно долго, и кнопка будет нажиматься, только пользователь не узнает (если прогер не позаботится) что он давно упёрся в потолок..
карма: 0
начавший
0
Администрация
Ответов: 15295
Рейтинг: 1519
#4: 2008-11-26 15:50:44 ЛС | профиль | цитата
Андрей., ну так этот элемент никогда не используется сам по себе Он обычно снабжается текстовым полем, в котором значение можно ввести вручную.
карма: 27
0
Ответов: 8923
Рейтинг: 823
#5: 2008-11-26 16:15:02 ЛС | профиль | цитата
Андрей., сам себе ответил
Андрей. писал(а):
(если прогер не позаботится)


Add(Edit,13245115,189,119)
{
Left=140
Top=50
}
Add(ChildPanel,5719962,140,119)
{
link(onEvent1,13245115:doText,[])
}
BEGIN_SDK
Add(EditMulti,9586123,21,21)
{
EventCount=1
Height=165
}
Add(Panel,15554967,56,140)
{
Left=80
Top=50
Width=42
Height=22
}
Add(Button,11041388,98,56)
{
Left=21
Top=1
Width=20
Caption=">"
Point(doEnabled)
link(onClick,6805673:doCompare,[])
}
Add(Button,6767276,98,98)
{
Left=1
Top=1
Width=20
Caption="<"
Point(doEnabled)
link(onClick,3582668:doCompare,[])
}
Add(Counter,15662771,210,77)
{
Max=9
link(onNext,422470:doEvent1,[])
}
Add(If_else,6805673,147,56)
{
Type=1
Op2=Integer(9)
link(onTrue,15662771:doNext,[(200,62)(200,83)])
link(onFalse,9176158:doWork1,[(188,69)(188,41)(45,41)(45,62)])
link(Op1,2627507:Var1,[(153,49)(194,49)(194,121)])
}
Add(If_else,3582668,147,98)
{
Type=2
Op2=Integer(0)
link(onTrue,15662771:doPrev,[(200,104)(200,90)])
link(onFalse,5550668:doWork1,[(191,111)(191,90)(43,90)(43,104)])
link(Op1,2627507:Var2,[(153,92)(189,92)(189,136)(216,136)])
}
Add(GetDataEx,2627507,203,112)
{
link(Data,15662771:Count,[])
}
Add(ChanelToIndex,9176158,56,56)
{
link(onIndex,11041388:doEnabled,[])
}
Add(ChanelToIndex,5550668,56,98)
{
link(onIndex,6767276:doEnabled,[])
}
Add(Hub,422470,252,77)
{
OutCount=3
link(onEvent1,9176158:doWork2,[(290,83)(290,36)(40,36)(40,69)])
link(onEvent2,5550668:doWork2,[(297,90)(297,30)(34,30)(34,111)])
link(onEvent3,9586123:onEvent1,[(302,97)(302,27)])
}
END_SDK

карма: 19

0
Ответов: 3851
Рейтинг: 159
#6: 2008-11-26 19:14:03 ЛС | профиль | цитата
Dilma писал(а):
мотая счетчик в одну из сторон пользователь в надежде достичь предел будет перелетать его
вот именно..

Леонид, достойно этюдов

PS: почему бы не внести это в элемент? Логично ведь, и не обременительно вроде..
карма: 0
начавший
0
Администрация
Ответов: 15295
Рейтинг: 1519
#7: 2008-11-26 21:44:08 ЛС | профиль | цитата
Андрей. писал(а):
почему бы не внести это в элемент?

потому что он это не поддерживает
карма: 27
0
7
Сообщение
...
Прикрепленные файлы
(файлы не залиты)