|
|
|
Combo
|
|||
|---|---|---|---|
|
#18+
Подскажите, уважаемое собрание есть комбо, источник массив[x,3] x-количество столбцов в гриде 3-это а-название хедера(чуть не получилось некрасивое слово :о)) в-источник значений для столбца(CONTROLSOURCE) с-название колумна Все это я определяю в init контейнера, на котором стоит комбо в, с-невидимы Value комбо=LIST пользователь выбирает поле В свойства контейнера записываю нужные свойства в InteractiveChage комбо пытаюсь в свойство контейнера записать название колумна(с) не получается CONTROLSOURCE(в)-записываю в свойство-все нормально(потому что Value ) Как записать??? LIST пробовала, рефрешила все и многое многое другое--все равно свойство пустое Спсибо за внимание. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.08.2003, 21:13 |
|
||
|
Combo
|
|||
|---|---|---|---|
|
#18+
Чего то прочла, а форум вродь как символы не прописал....? Повтор Подскажите, уважаемое собрание есть комбо, источник массив[x,3] x-количество столбцов в гриде 3-это а-Caption хедера(чуть не получилось некрасивое слово :о)) в-источник значений для столбца(CONTROLSOURCE) с-название колумна Все это я определяю в init контейнера, на котором стоит комбо в, с-невидимы Value комбо=LIST(2) пользователь выбирает поле В свойства контейнера записываю нужные свойства в InteractiveChage комбо пытаюсь в свойство контейнера записать название колумна(с) не получается CONTROLSOURCE(в)-записываю в свойство-все нормально(потому что Value ) Как записать??? LIST (3)пробовала, рефрешила все и многое многое другое--все равно свойство пустое Вообщем как получить в свойство(переменную) неявляющееся VALUE колонку комбо Спасибо за внимание. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.08.2003, 21:18 |
|
||
|
Combo
|
|||
|---|---|---|---|
|
#18+
При инициализации комбо присвой Combo.Value=1, тогда после выбора в Value будет индекс массива по ниму и присваивй - List(This.Value,1), List(This.Value,2), List(This.Value,3), если List - твой массив ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.08.2003, 00:45 |
|
||
|
Combo
|
|||
|---|---|---|---|
|
#18+
Я без кода ввела Вас в заблуждение Вот как все выглядит в ините контейнера lcMyGridname=THIS.MyGridname && выясняем название грида lcMyGridname=[THISFORM.]+lcgg loGridname=&lcMyGridname && делаем ссылку на объект PUBLIC aHeaderCaption n = m.loGridname.ColumnCount && количество столбцов в этом гриде DIMENSION aHeaderCaption(m.n,3) FOR i=1 TO m.n aHeaderCaption(i,1) = m.loGridname.Columns .Header1.Caption aHeaderCaption(i,2) = m.loGridname.Columns.ControlSource aHeaderCaption(i,3) = m.loGridname.Columns.Name ENDFOR THIS.Combo1.RowSourceType = 5 THIS.Combo1.RowSource = "aHeaderCaption" THIS.Combo1.ColumnCount=3 THIS.Combo1.BoundColumn=2 THIS.Combo1.ColumnWidths="180,0,0" This.Combo1.ColumnLines= .F. THIS.Combo1.VALUE =THIS.Combo1.LIST В InterActiveСh Combo *определяем список полей, значение берем из комбо LOCAL leValue,lcExpres leValue=THIS.VALUE lcExpres=[TRANSFORM(]+(leValue)+")" THIS.PARENT.listfields=lcExpres DODEFAULT() THIS.Parent.Refresh Как тута выловить название колумна-из 3 столбца массива (aHeaderCaption(i,3) = m.loGridname.Columns.Name) Спасибо за внимание ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.08.2003, 07:41 |
|
||
|
Combo
|
|||
|---|---|---|---|
|
#18+
Тут не правильно, описка вышла.Но тем не менее вопрос остается в силе Вот как все выглядит в ините контейнера lcMyGridname=THIS.MyGridname && выясняем название грида lcMyGridname=[THISFORM.]+lcgg loGridname=&lcMyGridname && делаем ссылку на объект Читать lcMyGridname=THIS.MyGridname && выясняем название грида lcMyGridname1=[THISFORM.]+lcMyGridname loGridname=&lcMyGridname1 && делаем ссылку на объект ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.08.2003, 07:49 |
|
||
|
Combo
|
|||
|---|---|---|---|
|
#18+
>Как тута выловить название колумна-из 3 столбца массива m.ColumnName=aHeaderCaption(This.ListIndex,3) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.08.2003, 20:38 |
|
||
|
Combo
|
|||
|---|---|---|---|
|
#18+
Спасибо за ответ Все получилось Слушайте этот форум "жрет символы" квадратных скобок "[]" вот тут у меня же не может быть ...m.loGridname.Columns.Header1.Caption... а должно быть(да и было) ...m.loGridname.Columns(i).Header1.Caption... Ну да ладно но вот проблема Если пользователь ничего не выбрал, проводиться проверка В моем методе *Проверка введенных значений IF THIS.Text1.Value="" MESSAGEBOX("Введите выражение") THIS.Text1.SetFocus RETURN ENDIF IF THIS.Combo1.ListIndex=0 MESSAGEBOX("Выберете поле ") THIS.Combo1.SetFocus RETURN ENDIF Так вот с текстовым полем то получается, а с комбо нет Как я только не извращалась и при инициации THIS.Combo1.Value="" и потом проверяла IF THIS.Combo1.ListItemID=-1 не проходит Вообщем как проверить, что пользователь ничего не выбрал ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.08.2003, 12:08 |
|
||
|
Combo
|
|||
|---|---|---|---|
|
#18+
Лично я предпочитаю не давать пользователю уйти с Комбо ничего не выбрав, задав ListIndex=1 при попадании фокуса на объект. Хочет отказатся - пусть жмет нужную кнопку или клавишу Esc. Но у меня великолепно работает проверка на Empty(This.Value) в Valid комбо ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.08.2003, 15:32 |
|
||
|
Combo
|
|||
|---|---|---|---|
|
#18+
Может конечно я запуталась вся но никак у меня не получается ListIndex=1 не хочется юзер ничего не выбрал В созданном мною методе перед его выполнение проверяю IF Empty(THIS.Combo1.Value) MESSAGEBOX("Выберете поле ") THIS.Combo1.SetFocus RETURN ENDIF Пролетает это место, не обрабатывает RETURN Еще раз -источник комбо-массив Ниччеегооо не понимаю Спасибо за внимание ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.08.2003, 16:30 |
|
||
|
Combo
|
|||
|---|---|---|---|
|
#18+
Поставь в Valid самого комбо: IF Empty(THIS.Value) MESSAGEBOX("Выберете поле ") RETURN 0 ENDIF RETURN .t. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.08.2003, 22:12 |
|
||
|
Combo
|
|||
|---|---|---|---|
|
#18+
Конечно пока не попробовала, от Фокса и проекта далеко но есть интернет Так вот Наверно Valid обработается когда фокус стоял, а потом уходит с комбо. а уменя текстовое поле, комбо, кнопка В клике кнопки-тот метод, в котором должна выполнятся проверка выбора в комбо Терзают меня смутные сомнеия, что юзер может на комбо и "не взглянуть" например сразу будет кликать выполнение метода, а там без выбора комбо куча ошибок То есть фокус на комбо и не поподет Позволю себе настаивать на проверки непустого значения комбо в другом методе(ведь тексбокс ведь проверяет) >В моем методе MyFind *Проверка введенных значений IF THIS.Text1.Value="" MESSAGEBOX("Введите выражение") THIS.Text1.SetFocus RETURN ENDIF IF THIS.Combo1.ListIndex=0 MESSAGEBOX("Выберете поле ") THIS.Combo1.SetFocus RETURN ENDIF Так вот с текстовым полем то получается, а с комбо нет Спасибо большое за внимание. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.08.2003, 08:41 |
|
||
|
Combo
|
|||
|---|---|---|---|
|
#18+
>Терзают меня смутные сомнеия, что юзер может на комбо и "не взглянуть" например сразу будет кликать выполнение метода Ну так в Click-е кнопки оправь юзера на тотже VALID комбо... Но в принципе проверка на Empty(This.Combo.Value) должна работать ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.08.2003, 09:01 |
|
||
|
|

start [/forum/topic.php?fid=41&fpage=416&tid=1598034]: |
0ms |
get settings: |
8ms |
get forum list: |
14ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
45ms |
get topic data: |
11ms |
get forum data: |
2ms |
get page messages: |
48ms |
get tp. blocked users: |
2ms |
| others: | 246ms |
| total: | 382ms |

| 0 / 0 |

Извините, этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
... ля, ля, ля ...