![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
обработчик MouseToCall [D6]
john_mag © (2005-06-02 09:02:00)Доброе утро, всем! Кто сможет подсказать или показать... Я использую обработчик MouseToCall в StringGrid. Отправляются входящие данные 484 и 327. Говорится, что должны исходящие данные быть в виде номера столбца ACol и строки ARow, а она(процедура) выдаёт в индикаторе следующие результаты: 2000281672 и 1242664 соответственно - ? Спасибо всем за будущие советы.
john_mag (2005-06-02 10:00:00) [1]если P := ClientToScreen(Point(X,Y)); убрать, то что-то вроде работает, а иначе P := ClientToScreen(Point(X, - ')'expected but ',' found.
begin...end (2005-06-02 09:36:00) [2]> john_mag © (02.06.05 09:17) [5]
procedure TForm1.StringGrid1MouseUp(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer);
var
ACol, ARow: Integer;
P: TPoint;
begin
with (Sender as TStringGrid) do
begin
MouseToCell(X, Y, ACol, ARow);
P := ClientToScreen(Point(X, Y))
end;
PopupMenu1.Popup(P.X, P.Y);
StatusBar1.Panels[0].Text := Format('%d:%d', [ACol, ARow])
end
?
john_mag (2005-06-02 09:31:00) [3]думаешь результаты изменятся? входящие же правильны, а вот исходящие... а MouseToCall - ;( MouseToCell - ;)
iskatel (2005-06-02 09:23:00) [4]1 MouseToCall ты не ошибся? я видел там только MouseToCll ell
2 накой считать от формы, а потом еще и клиент ориджин добавлять? делай обработчик мыши не формы а грида
iskatel (2005-06-02 09:23:00) [5]блин, т.е. MouseToC ell
john_mag (2005-06-02 09:17:00) [6]procedure TForm5.FormMouseUp(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
var P: TPoint;
x2,y2: Longint;
begin
P:= GetClientOrigin;
if Button = mbRight then
begin
MouseToCall(P.X+(X+6),P.Y+(Y+60),x2,y2);
PopupMenu1.Popup(P.X+(X+6),P.Y+(Y+60));
StatusBar1.Panels.Items[0].Text:= IntToStr(x2)+':'+IntToStr(y2);
end;
end;
StringGrid1.ColWidths[0]:= 60;
StringGrid1.ColWidths[1] >= 300;
StringGrid1.ColWidths[2]:= 50;
StringGrid1.ColWidths[3]:= 70;
iskatel (2005-06-02 09:15:00) [7]2begin...end
если не попадает, то выдает -1
iskatel (2005-06-02 09:14:00) [8]
> выдаёт в индикаторе
в каком индикаторе? похоже у тя ошибка при выводе в индикатор, проверь в дебаггере переменные сразу после ф-ции MouseToCell...
begin...end (2005-06-02 09:07:00) [9]В смысле, ширины (Width) и высоты (Height).
begin...end (2005-06-02 09:06:00) [10]Приведите полный код, а также значения длины и ширины StringGrid.