Форум программистов, компьютерный форум, киберфорум
Delphi
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.91/22: Рейтинг темы: голосов - 22, средняя оценка - 4.91
Кратк. - сест. тал.
 Аватар для Vit@L
87 / 51 / 4
Регистрация: 13.03.2008
Сообщений: 543

Автоматическое появление списка PickList

28.08.2009, 06:26. Показов 4306. Ответов 9
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Привет всем.
Как сделать, чтобы при получении фокуса ячейкой, в столбце, у которого есть PickList, автоматически появлялся выпадающий список? Либо может как-то привязать это к нажатию клавиши Enter. Т.е. важно само свойство компонента DBGrid, которое вызывает выпадающий список.
Заранее спасибо.

Ну и че, разве никто не знает?
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
28.08.2009, 06:26
Ответы с готовыми решениями:

Как разрешить ввод данных в DBGrid только из списка PickList ?
Всем привет. Подскажите, плиз, как разрешить ввод данных в DBGrid только из списка PickList ? Т.е. вводится другое значение – оно...

Обновление PickList при выборе ячейки с PickList
Здравствуйте. Есть таблица в БД MySQL, которая может в любой момент обновляться (из другого источника). Значение из этой таблицы должны...

Автоматическое обновление списка
Добрый день. Есть в нете код для обновления списка drivecombobox. Вставил флешку, нажал на кнопку и список обновился. А можно сделать...

9
Почетный модератор
 Аватар для Lord_Voodoo
8785 / 2538 / 144
Регистрация: 07.03.2007
Сообщений: 11,873
31.08.2009, 11:17
что-то я вас несильно понял, что конкретно у вас не выходит? вы не можете организовать выпадающий список по столбцу или что?
0
Кратк. - сест. тал.
 Аватар для Vit@L
87 / 51 / 4
Регистрация: 13.03.2008
Сообщений: 543
01.09.2009, 11:23  [ТС]
VoodooMan, нет, сам список есть, т.е. сам PickList заполняется, а вот как сделать чтобы как только ячейка (у которой есть этот самый выпадающий список) получала фокус, автоматически появлялся выпадающий список? Т.е. как будто-бы пользователь нажал на кнопку выпадающего списка. Свойство ячейки AutoDropDown не помогает, хотя и установлено в True.
Заранее спасибо.
0
Почетный модератор
 Аватар для Lord_Voodoo
8785 / 2538 / 144
Регистрация: 07.03.2007
Сообщений: 11,873
01.09.2009, 11:26
по идее, список выпадает, если грид переведен в режим редактирования
0
Кратк. - сест. тал.
 Аватар для Vit@L
87 / 51 / 4
Регистрация: 13.03.2008
Сообщений: 543
01.09.2009, 15:07  [ТС]
В том то и дело, что не выпадает. Т.е. колонка, в которое содержится список у меня 3-я, я заполняю первую колонку, при нажатии на Ентер, у меня курсор переходит на вторую колонку, после заполнения 2-ой колонки я нажимаю Ентер и вот тут, курсор переходит на 3-ю (в которой должен вылезти список) но она только принимает фокус (подсвечивается синим цветом) но ничего не выпадает, пока не нажмешь на клаве какую-нить клавишу, либо не нажмешь на кнопку в этой ячейке. А мне нужно чтобы список выпадал сразу же после получения фокуса ячейкой. Как это сделать? Либо как с имитировать нажатие клавиши на этой ячейке???
0
Почетный модератор
 Аватар для Lord_Voodoo
8785 / 2538 / 144
Регистрация: 07.03.2007
Сообщений: 11,873
01.09.2009, 15:39
ну я для таких действий комбобокс лепил к гриду, вычислял координаты... просто есть подозрение, что стандартный компонент тебе не заставить так работать, придется руками все делать...
0
Кратк. - сест. тал.
 Аватар для Vit@L
87 / 51 / 4
Регистрация: 13.03.2008
Сообщений: 543
02.09.2009, 05:28  [ТС]
Хорошо, тогда подскажите как можно имитировать нажатие какой-либо клавиши когда фокус приняла эта ячейка? Ну или послать какой-нить keycode это ячейке????

Ну подскажите кто-нибудь.
0
Почетный модератор
 Аватар для Lord_Voodoo
8785 / 2538 / 144
Регистрация: 07.03.2007
Сообщений: 11,873
03.09.2009, 10:19
это можно сделать так (извините, что на билдере, но перевести будет несложно):
пример - выпадение списка на двойной клик (goAlwaysShowEditor = true обязательно!!!)
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
void __fastcall TForm1::DBGrid1DblClick(TObject *Sender)
{
  if(DBGrid1->SelectedIndex == 0){
    keybd_event(VK_MENU, 0, 0, 0);
    Sleep(50);
    keybd_event(40, 0, 0, 0);
    Sleep(50);
    keybd_event(40, 0, KEYEVENTF_KEYUP, 0);
    Sleep(50);
    keybd_event(VK_MENU, 0, KEYEVENTF_KEYUP, 0);
    Sleep(50);
  }
}
0
Кратк. - сест. тал.
 Аватар для Vit@L
87 / 51 / 4
Регистрация: 13.03.2008
Сообщений: 543
03.09.2009, 12:10  [ТС]
мне не нужен двойной клик. Мне нужно чтобы этот гребаный список сам появлялся, как только ячейка получает фокус. И если честно, я с билдером не очень дружу.
0
Почетный модератор
 Аватар для Lord_Voodoo
8785 / 2538 / 144
Регистрация: 07.03.2007
Сообщений: 11,873
03.09.2009, 12:57
вообще там написано, что это пример... тебе нужны только вызовы апишных функций, а они доступны в любом практически языке... выбирай нужное событие и делай нажатие кнопок alt + стрелка вниз
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
03.09.2009, 12:57
Помогаю со студенческими работами здесь

Автоматическое появление снизу формы
Здравствуйте. Есть код который делает-из выпадающего списка можно выбрать нужное значение и это значение передаётся в input. Теперь...

Автоматическое появление формы обработки
Добрый день! В общем вопрос такой, есть база в 1с 8.1, там в модуле приложений есть процедура "ПриНачалеРаботыСистемы" так вот я...

Как задать автоматическое появление значения в ячейке
Добрый день! Надо следующее: в ячейке А1 можно выбрать одно из значений: Оплачено, Выставлен счет, Рассрочка, Перенесена. Хочу...

Автоматическое появление рамки у прозрачных картинок в Wordpress
Всем низкий поклон уважаймейшие эксперты! Меня мучает втоматическое появление рамки у прозрачных картинок в Wordpress, создал картинку с...

Нужно сделать автоматическое появление модального окна
Доброго всем времени суток. Есть такого рода задачка. Пишу сайт. На нём при входе сразу проверяется авторизован пользователь или нет....


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
10
Ответ Создать тему
Новые блоги и статьи
Символьное дифференцирование
igorrr37 13.02.2026
/ * Логарифм записывается как: (x-2)log(x^2+2) - означает логарифм (x^2+2) по основанию (x-2). Унарный минус обозначается как ! */ #include <iostream> #include <stack> #include <cctype>. . .
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу, и светлой Луне. В мире покоя нет и люди не могут жить в тишине. А жить им немного лет.
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила» «Время-Деньги» «Деньги -Пуля»
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL3_image
8Observer8 10.02.2026
Содержание блога Библиотека SDL3_image содержит инструменты для расширенной работы с изображениями. Пошагово создадим проект для загрузки изображения формата PNG с альфа-каналом (с прозрачным. . .
Установка Qt-версии Lazarus IDE в Debian Trixie Xfce
volvo 10.02.2026
В общем, достали меня глюки IDE Лазаруса, собранной с использованием набора виджетов Gtk2 (конкретно: если набирать текст в редакторе и вызвать подсказку через Ctrl+Space, то после закрытия окошка. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru