| Предыдущая тема :: Следующая тема |
| Автор |
Сообщение |
Александр Участник

Зарегистрирован: 01.05.2007 Сообщения: 73
Статус: Отсутствует на форуме Очки: 0 |
Заголовок сообщения: DBGrid Добавлено: Вт Мар 02, 2010 9:53 |
|
|
Прошу помощи,
у меня на форме лежит грид и попап, в попапе есть графа упорядочить, вопрос:
1. как в попап добавить все заголовки грида
2. как поймать клик по заголовку
3. как сортировать грид
за ранее спасибо (поиск результата не дал)!
|
|
|
| Вернуться к началу |
|
 |
Tantos Ветеран

Зарегистрирован: 13.10.2004 Сообщения: 1177 Откуда: Хабаровск Статус: Сейчас на форуме! Очки: 141 |
Заголовок сообщения: Добавлено: Вт Мар 02, 2010 13:58 |
|
|
Эммм, а не проще ли воспользоваться DBGridEh из библиотеки EhLib? Если не проще, то:
1. DataSet::GetFiedlNames или через DBGrid::Columns
2. DBGrid::OnClick + получение координат мыши Mouse::CursorPos
3. Ну а дальше - либо изменением запроса с добавлением ORDER BY, либо хитрыми манипуляциями, в зависимости от компонентов доступа и БД.
|
_________________ Чем больше узнаю людей, тем больше люблю компьютеры. |
|
| Вернуться к началу |
|
 |
Александр Участник

Зарегистрирован: 01.05.2007 Сообщения: 73
Статус: Отсутствует на форуме Очки: 0 |
Заголовок сообщения: Добавлено: Вт Мар 02, 2010 16:55 |
|
|
DBGridEh из библиотеки EhLib - это стандартный компонент?
|
|
|
| Вернуться к началу |
|
 |
Александр Участник

Зарегистрирован: 01.05.2007 Сообщения: 73
Статус: Отсутствует на форуме Очки: 0 |
Заголовок сообщения: Добавлено: Вт Мар 02, 2010 16:57 |
|
|
по поводу 3. - я не использую базу, подгружаю через ClientDataSet->LoadFromFile(....
как тогда, сортировать в отдельном потоке?
|
|
|
| Вернуться к началу |
|
 |
Александр Участник

Зарегистрирован: 01.05.2007 Сообщения: 73
Статус: Отсутствует на форуме Очки: 0 |
Заголовок сообщения: Добавлено: Вт Мар 02, 2010 17:38 |
|
|
по 1. - сделал так:
| Код: |
TPopupMenu *PopupMenu = new TPopupMenu(this);
for(int i = 0; i < DBGrid->Columns->Count; i++)
{
TMenuItem *MenuItem = new TMenuItem(PopupMenu);
PopupMenu->Items->Add(MenuItem);
MenuItem->Caption = DBGrid->Columns->Items[i]->FieldName;
}
DBGrid->PopupMenu = PopupMenu;
|
|
|
|
| Вернуться к началу |
|
 |
|