Re[8]: Имя столбца в EhGrid
От: URA_12  
Дата: 29.12.04 06:25
Оценка: 2 (1)
Здравствуйте, AMogil, Вы писали:

> Я не утверждал, а спрашивал. Может вы попробуете. Вполне возможно, что текущую ячейку он все же отслеживает, но просто рамку не отрисовывает.

>

Проверил! С RowSelect = True НЕ работает.

Юрий..
Posted via RSDN NNTP Server 1.9 delta
Re[4]: Имя столбца в EhGrid
От: URA_12  
Дата: 28.12.04 14:52
Оценка: 1 (1)
Здравствуйте, AMogil, Вы писали:

> Этот код показывает не заголовок столбца, на котором отпустили кнопку мыши, а "TDBGridEh(Sender).Col-1", т.е. заголовок последнего столбца. Всегда.


Нееет Заголовок последнего столбца показывает не Col, a ColCount,
т.е. TDBGridEh(Sender).ColCount-1

А Col, насколько я понял, показывает номер столбца грида, на котором сфокусирована ячека грида. Потому как у меня одинаково работает оба варианта
Еще раз спасибо...

Юрий...
Posted via RSDN NNTP Server 1.9 delta
Имя столбца в EhGrid
От: URA_12  
Дата: 28.12.04 11:48
Оценка:
Как узнать имя столбца грида по нажатию мышки
в событии OnMouseUp?

Юрий.
Posted via RSDN NNTP Server 1.9 delta
Re: Имя столбца в EhGrid
От: AMogil Россия  
Дата: 28.12.04 14:10
Оценка:
Здравствуйте, URA_12, Вы писали:

URA>Как узнать имя столбца грида по нажатию мышки

URA>в событии OnMouseUp?

URA>Юрий.


Перефразирую вопрос как его понял:

Дано:
Обработчик события OnMouseUp грида.

Найти:
Узнать имя столбца, на каторый приходится соотвествующее отпускание кнопки мыши.

Ответ:


procedure TForm.DBGridEhMouseUp(Sender: TObject;
  Button: TMouseButton; Shift: TShiftState; X, Y: Integer);
var
  GridCoord: TGridCoord;
    ColumnName: string;
begin
  GridCoord := DBGridEh.MouseCoord(X, Y);
  if (GridCoord.X >= 0) and (GridCoord.Y > 0) then
      ColumnName := DBGridEh.Columns[GridCoord.X].Title.Caption;
end;
... << RSDN@Home 1.1.3 stable >>
Re[2]: Имя столбца в EhGrid
От: AMogil Россия  
Дата: 28.12.04 14:17
Оценка:
...Title.Caption


т.к. имен у столбцов нет.

Алексей.
... << RSDN@Home 1.1.3 stable >>
Re[2]: Имя столбца в EhGrid
От: URA_12  
Дата: 28.12.04 14:30
Оценка:
Здравствуйте, AMogil, Вы писали:

>
> 
> procedure TForm.DBGridEhMouseUp(Sender: TObject;
>   Button: TMouseButton; Shift: TShiftState; X, Y: Integer);
> var
>   GridCoord: TGridCoord;
> ColumnName: string;
> begin
>   GridCoord := DBGridEh.MouseCoord(X, Y);
>   if (GridCoord.X >= 0) and (GridCoord.Y > 0) then
>   ColumnName := DBGridEh.Columns[GridCoord.X].Title.Caption;
> end;
> 
>


Спасибо, все работает!!! Нашел другой способ (наверно менее правильный):

procedure TForm.DBGridEhMouseUp(Sender: TObject;
Button: TMouseButton; Shift: TShiftState; X, Y: Integer);
var
ColumnName: string;
begin
ColumnName := TDBGridEh(Sender).Columns[TDBGridEh(Sender).Col-1].Title.Caption;
end;
Posted via RSDN NNTP Server 1.9 delta
Re[3]: Имя столбца в EhGrid
От: AMogil Россия  
Дата: 28.12.04 14:33
Оценка:
Здравствуйте, URA_12, Вы писали:

URA>Спасибо, все работает!!! Нашел другой способ (наверно менее правильный):


URA>procedure TForm.DBGridEhMouseUp(Sender: TObject;

URA> Button: TMouseButton; Shift: TShiftState; X, Y: Integer);
URA>var
URA> ColumnName: string;
URA>begin
URA> ColumnName := TDBGridEh(Sender).Columns[TDBGridEh(Sender).Col-1].Title.Caption;
URA>end;

Этот код показывает не заголовок столбца, на котором отпустили кнопку мыши, а "TDBGridEh(Sender).Col-1", т.е. заголовок последнего столбца. Всегда.

Алексей
... << RSDN@Home 1.1.3 stable >>
Re[5]: Имя столбца в EhGrid
От: AMogil Россия  
Дата: 28.12.04 14:56
Оценка:
Здравствуйте, URA_12, Вы писали:

URA>Здравствуйте, AMogil, Вы писали:


>> Этот код показывает не заголовок столбца, на котором отпустили кнопку мыши, а "TDBGridEh(Sender).Col-1", т.е. заголовок последнего столбца. Всегда.


URA>Нееет Заголовок последнего столбца показывает не Col, a ColCount,

URA>т.е. TDBGridEh(Sender).ColCount-1

URA>А Col, насколько я понял, показывает номер столбца грида, на котором сфокусирована ячека грида. Потому как у меня одинаково работает оба варианта

URA>Еще раз спасибо...

URA>Юрий...


А будет ли работать ...Col, если у грида RowSelect = True?

Алексей.
... << RSDN@Home 1.1.3 stable >>
Re[6]: Имя столбца в EhGrid
От: URA_12  
Дата: 28.12.04 15:04
Оценка:
Здравствуйте, AMogil, Вы писали:

>

> А будет ли работать ...Col, если у грида RowSelect = True?
>

Хмм... скорей всего нет, просто кроме этого варианта мне ничего не приходило в голову.
С использованием MouseCoord безусловно корректней.

Юрий.
Posted via RSDN NNTP Server 1.9 delta
Re[7]: Имя столбца в EhGrid
От: AMogil Россия  
Дата: 28.12.04 15:07
Оценка:
Здравствуйте, URA_12, Вы писали:


URA>Здравствуйте, AMogil, Вы писали:


>>

>> А будет ли работать ...Col, если у грида RowSelect = True?
>>

URA>Хмм... скорей всего нет, просто кроме этого варианта мне ничего не приходило в голову.

URA>С использованием MouseCoord безусловно корректней.

URA>Юрий.


Я не утверждал, а спрашивал. Может вы попробуете. Вполне возможно, что текущую ячейку он все же отслеживает, но просто рамку не отрисовывает.


Алексей.
... << RSDN@Home 1.1.3 stable >>
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.