Components for Delphi and C++ Builder.

Перейти в английский форум
Перейти на EhLib.com
Текущее время: 19 апр 2024, 13:34

Часовой пояс: UTC




Начать новую тему Ответить на тему  [ Сообщений: 3 ] 
Автор Сообщение
 Заголовок сообщения: RightClick на заголовке
СообщениеДобавлено: 14 июн 2020, 09:36 
Не в сети

Зарегистрирован: 06 мар 2012, 04:41
Сообщений: 128
Добрый день!

У грида в TitleParams присвоено свойство PopupMenu
как при Popup этого меню узнать номер колонки?
потому что SelectedIndex для грида не меняется


Вернуться наверх
 Профиль  
 
 Заголовок сообщения: Re: RightClick на заголовке
СообщениеДобавлено: 15 июн 2020, 01:56 
Не в сети

Зарегистрирован: 21 дек 2011, 18:48
Сообщений: 1549
Добрый день.

Можно через событие TDBGridEh.OnContextPopup

Код:
procedure TForm1.DBGridEh1ContextPopup(Sender: TObject; MousePos: TPoint;
  var Handled: Boolean);
var
  GridCoord: TGridCoord;
  Column: TColumnEh;
begin
  GridCoord := DBGridEh1.MouseCoord(MousePos.X, MousePos.Y);
  if (GridCoord.X >= 1) and (GridCoord.Y >= 0) then
  begin
    Column := DBGridEh1.Columns[GridCoord.X - 1];
    Menu21.Caption := Column.Title.Caption;
  end;
end;

_________________
Best regards
EhLib support Team


Вернуться наверх
 Профиль  
 
 Заголовок сообщения: Re: RightClick на заголовке
СообщениеДобавлено: 15 июн 2020, 05:25 
Не в сети

Зарегистрирован: 06 мар 2012, 04:41
Сообщений: 128
EhLibSupport писал(а):
Добрый день.

Можно через событие TDBGridEh.OnContextPopup

Код:
procedure TForm1.DBGridEh1ContextPopup(Sender: TObject; MousePos: TPoint;
  var Handled: Boolean);
var
  GridCoord: TGridCoord;
  Column: TColumnEh;
begin
  GridCoord := DBGridEh1.MouseCoord(MousePos.X, MousePos.Y);
  if (GridCoord.X >= 1) and (GridCoord.Y >= 0) then
  begin
    Column := DBGridEh1.Columns[GridCoord.X - 1];
    Menu21.Caption := Column.Title.Caption;
  end;
end;


Спасибо.
добавил строку
Код:
DBGridEh1.SelectedIndex := Column.Index + 1;

теперь позиционируется сразу и меню работает как ожидалось


Вернуться наверх
 Профиль  
 
Показать сообщения за:  Сортировать по:  
Начать новую тему Ответить на тему  [ Сообщений: 3 ] 

Часовой пояс: UTC


Кто сейчас на форуме

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 4


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  
Powered by phpBB® Forum Software © phpBB Group
Русская поддержка phpBB