Как сделать PickButton в стиле ComboBox
Модераторы: m0p3e, edward_K, Модераторы
-
- Постоянный гость
- Сообщения: 60
- Зарегистрирован: 29 мар 2005, 17:49
- Откуда: Москва
- Контактная информация:
Как сделать PickButton в стиле ComboBox
Если в Fields описать поле xxx:PickButton, то получится кнопка справа от поля...а нужно сделать выпадающий вниз список...думаю что проще некуда,но синтаксис в официальной документации я не нашел... , может кто подскажет? Спасибо.
-
- Постоянный гость
- Сообщения: 60
- Зарегистрирован: 29 мар 2005, 17:49
- Откуда: Москва
- Контактная информация:
Re: Как сделать PickButton в стиле ComboBox
Там конечно PickButton без улыбки...смайлик случайно получился...
-
- Местный житель
- Сообщения: 474
- Зарегистрирован: 29 мар 2005, 17:49
- Откуда: Сибирь-матушка
- Контактная информация:
Re: Как сделать PickButton в стиле ComboBox
Fields MyField:[List '1 элемент списка','2 элемент списка','3 элемент списка' ...],protect;
Только для целочисленных типов ...
Только для целочисленных типов ...
Питаю патологические отвращение и ненависть в особо тяжелой и крайне запущенной формах к семейству программ Microsoft Business Solution !
Восславим господа Кришну за то, что у нас есть ГАЛАКТИКА !
Восславим господа Кришну за то, что у нас есть ГАЛАКТИКА !
-
- На пенсии
- Сообщения: 797
- Зарегистрирован: 29 мар 2005, 17:49
- Откуда: г. Тюмень
- Контактная информация:
Re: Как сделать PickButton в стиле ComboBox
Не мучайся, напиши свою библиотеку, например, на Дельфях
Жду выхода Вселенная 2.12!
-
- Местный житель
- Сообщения: 783
- Зарегистрирован: 29 мар 2005, 17:49
- Откуда: Москва
- Контактная информация:
Re: Как сделать PickButton в стиле ComboBox
CONST
sci13EnEsc = 6906;
END
Interface MySpMoveOS;
create view
var
...
P2 : word; // для разбора параметров
...
Window wParam 'Задайте параметры идентификатора &VIP[Obj:"MySpMoveOS"]' (,,) EscClose;
Show at (22,15,120,25);
Screen scParam (,,);
Show at (,,,);
Fields
...
P2 ('Разность сумм',,sci13EnEsc) :
[LIST 0 ' ',
1 'Предыдущая первоначальная ст-ть',
2 'Новая первоначальная ст-ть',
3 'Предыдущая сумма износа',
4 'Новая сумма износа',
5 'Сумма покупки/продажи'] ,protect;
...
<<
...
Разность между какой величиной рассчитывать: .@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
...
>>
End; // Screen
В HandleEvent прописывать обработку по этому полю не нужно.
sci13EnEsc = 6906;
END
Interface MySpMoveOS;
create view
var
...
P2 : word; // для разбора параметров
...
Window wParam 'Задайте параметры идентификатора &VIP[Obj:"MySpMoveOS"]' (,,) EscClose;
Show at (22,15,120,25);
Screen scParam (,,);
Show at (,,,);
Fields
...
P2 ('Разность сумм',,sci13EnEsc) :
[LIST 0 ' ',
1 'Предыдущая первоначальная ст-ть',
2 'Новая первоначальная ст-ть',
3 'Предыдущая сумма износа',
4 'Новая сумма износа',
5 'Сумма покупки/продажи'] ,protect;
...
<<
...
Разность между какой величиной рассчитывать: .@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
...
>>
End; // Screen
В HandleEvent прописывать обработку по этому полю не нужно.
-
- Абориген
- Сообщения: 943
- Зарегистрирован: 29 мар 2005, 17:49
- Откуда: External Developer
- Контактная информация:
Re: Как сделать PickButton в стиле ComboBox
По поводу списков и ПикБаттонов. Маленькое замечание.
1.Если элементов, предлагаемых пользователю к выбору БОЛЬШЕ 3, то НЕОБХОДИМО использовать PickButton, если от 1 до 3-х - то LIST
2.Поле, в котором заюзан PickButton, должно
а) реагировать на F3 в любом случае
б) если не заполнено - то иметь фон NeedColor и при позиционировании на него (т.е. при срабатывании cmCurField) автоматом вызываться F3
1.Если элементов, предлагаемых пользователю к выбору БОЛЬШЕ 3, то НЕОБХОДИМО использовать PickButton, если от 1 до 3-х - то LIST
2.Поле, в котором заюзан PickButton, должно
а) реагировать на F3 в любом случае
б) если не заполнено - то иметь фон NeedColor и при позиционировании на него (т.е. при срабатывании cmCurField) автоматом вызываться F3
-
- Местный житель
- Сообщения: 783
- Зарегистрирован: 29 мар 2005, 17:49
- Откуда: Москва
- Контактная информация:
Re: Как сделать PickButton в стиле ComboBox
2 Maverick:
1. А почему такое ограничение на кол-во элементов выбора? С чем связано?
2. Достаточно ли указать вместо
P2 ('Разность сумм',,sci13EnEsc) :
[LIST 0 ' ',
1 'Предыдущая первоначальная ст-ть',
2 'Сумма покупки/продажи'] ,protect;
такую конструкцию:
[LIST 0 ' ',
1 'Предыдущая первоначальная ст-ть',
2 'Сумма покупки/продажи'] ,Protect ,PickButton;
3. Можешь привести пример с использованием фона NeedColor?
1. А почему такое ограничение на кол-во элементов выбора? С чем связано?
2. Достаточно ли указать вместо
P2 ('Разность сумм',,sci13EnEsc) :
[LIST 0 ' ',
1 'Предыдущая первоначальная ст-ть',
2 'Сумма покупки/продажи'] ,protect;
такую конструкцию:
[LIST 0 ' ',
1 'Предыдущая первоначальная ст-ть',
2 'Сумма покупки/продажи'] ,Protect ,PickButton;
3. Можешь привести пример с использованием фона NeedColor?
-
- Абориген
- Сообщения: 943
- Зарегистрирован: 29 мар 2005, 17:49
- Откуда: External Developer
- Контактная информация:
Re: Как сделать PickButton в стиле ComboBox
1. Ограничение продиктовано требованиями к эргономичности, попросту говоря- стандартами корпорации - т.е. хочешь писать правильно - пиши так как стандартах
2. LIST и PickButton - суть разные параметры! Вместе их использовать нельзя - выбирай одно - либо это ЛИСТ либо это поле с кнопкой выбора
3. NeedColor подключается как параметр фонта для поля через If , т.е. если есть ссылка - то 0 если нет - то NeedColor. Соответственно и в обработчике cmCurField нужна проверка - если для данного поля запись валидна то ничего не делаем иначе вызываем cmPick
2. LIST и PickButton - суть разные параметры! Вместе их использовать нельзя - выбирай одно - либо это ЛИСТ либо это поле с кнопкой выбора
3. NeedColor подключается как параметр фонта для поля через If , т.е. если есть ссылка - то 0 если нет - то NeedColor. Соответственно и в обработчике cmCurField нужна проверка - если для данного поля запись валидна то ничего не делаем иначе вызываем cmPick
-
- Местный житель
- Сообщения: 783
- Зарегистрирован: 29 мар 2005, 17:49
- Откуда: Москва
- Контактная информация:
Re: Как сделать PickButton в стиле ComboBox
Дык, Mav, это ж получается, что надо обрабатывать нажатие на PickButton в скрине. И вызывать по нажатию ...что?.... отдельный интерфейс? Который дает воможность выбора между 5-тью параметрами?
Это чтобы иметь возможность выбора из 5 параметров писать фейс который будет вызываться по нажатию кнопки? А если будет в скрине несколько полей и каждый с кол-вом элементов выбора более 3-х? На каждый писать отдельный фейс?
Или надо вызывать отдельное окошко? Т.е. надо для каждого поля в своем фейса надо прописать свое window, которое будет вызываться по нажатию на PickButton?
Это ж раздувается фейс как....
Поле с конструкцией LIST - довольно просто и наглядно. По нажатию на F3 открывается окошко и ты че-нить выбираешь. Причем обработчик окошка и само окошко ты не прописываешь. А для конструкции PickButton обработчик (отдельный фейс, отдельное окно) прописывать придется.
Может как-то еще можно обработать выбор в поле с конструкцией PickButton?
Это чтобы иметь возможность выбора из 5 параметров писать фейс который будет вызываться по нажатию кнопки? А если будет в скрине несколько полей и каждый с кол-вом элементов выбора более 3-х? На каждый писать отдельный фейс?
Или надо вызывать отдельное окошко? Т.е. надо для каждого поля в своем фейса надо прописать свое window, которое будет вызываться по нажатию на PickButton?
Это ж раздувается фейс как....
Поле с конструкцией LIST - довольно просто и наглядно. По нажатию на F3 открывается окошко и ты че-нить выбираешь. Причем обработчик окошка и само окошко ты не прописываешь. А для конструкции PickButton обработчик (отдельный фейс, отдельное окно) прописывать придется.
Может как-то еще можно обработать выбор в поле с конструкцией PickButton?
Стандарты
Maverick, может поделишся с народом этими стандартами?
???
???
-
- Постоянный гость
- Сообщения: 60
- Зарегистрирован: 29 мар 2005, 17:49
- Откуда: Москва
- Контактная информация:
Re: Стандарты
Не знаю насчет стандартов , но информация очччень полезная, спасибо большое!
-
- Абориген
- Сообщения: 943
- Зарегистрирован: 29 мар 2005, 17:49
- Откуда: External Developer
- Контактная информация:
Re: Стандарты
Выдержка из "ТРЕБОВАНИЯ К РАЗРАБОТКЕ ПОЛЬЗОВАТЕЛЬСКИХ ИНТЕРФЕЙСОВ" - Корпоративный стандарт
...
3.8. Поля ввода
3.8.1. Поля ввода с фиксированными значениями должны заполняться с помощью функциональ-ной клавиши F3. Указание на это должно появляться в строке функциональных клавиш.
3.8.2. Если фиксированных значений не более 3-х, они должны последовательно и циклически отображаться в поле по мере нажатия указанной клавиши (элемент LIST).
3.8.3. Если фиксированных значений больше 3-х, они должны отображаться в отдельном окне выбора, открываемом по клавише F3 (свойство PickButton).
3.8.4. Если поле ввода является обязательным для заполнения, окно выбора значений должно от-крываться автоматически при установке курсора на это поле, когда оно еще не заполнено
...
3.8. Поля ввода
3.8.1. Поля ввода с фиксированными значениями должны заполняться с помощью функциональ-ной клавиши F3. Указание на это должно появляться в строке функциональных клавиш.
3.8.2. Если фиксированных значений не более 3-х, они должны последовательно и циклически отображаться в поле по мере нажатия указанной клавиши (элемент LIST).
3.8.3. Если фиксированных значений больше 3-х, они должны отображаться в отдельном окне выбора, открываемом по клавише F3 (свойство PickButton).
3.8.4. Если поле ввода является обязательным для заполнения, окно выбора значений должно от-крываться автоматически при установке курсора на это поле, когда оно еще не заполнено
-
- Местный житель
- Сообщения: 783
- Зарегистрирован: 29 мар 2005, 17:49
- Откуда: Москва
- Контактная информация:
Re: Стандарты
>> 3.8.3. Если фиксированных значений больше 3-х, они должны отображаться в отдельном окне
>> выбора, открываемом по клавише F3 (свойство PickButton).
Мав, поясни, плиз, что это за "отдельное окно выбора". Нужно эти "отдельные окошки" прописывать в своем интерфейсе?
Или нужно использовать то, что в стандартах называется "свойство PickButton"? То есть самому прописывать окошки window не надо, а PickButton может открывать свое окошко, похожее на LIST? Можешь привести пример/кусочек примера, как это реализовывается (ведь именно в этом загвоздка)?
>> выбора, открываемом по клавише F3 (свойство PickButton).
Мав, поясни, плиз, что это за "отдельное окно выбора". Нужно эти "отдельные окошки" прописывать в своем интерфейсе?
Или нужно использовать то, что в стандартах называется "свойство PickButton"? То есть самому прописывать окошки window не надо, а PickButton может открывать свое окошко, похожее на LIST? Можешь привести пример/кусочек примера, как это реализовывается (ведь именно в этом загвоздка)?