Текущий архив: 2008.10.05;
Скачать: CL | DM;
Вниз
Курсор мыши Найти похожие ветки
← →
Jimmy (2008-08-26 23:37) [0]Почему процедура
procedure TForm1.FormMouseDown(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
begin
Cursor:=crHourGlass;
end;
изменяет курсор мыши только когда наступило MouseUp?
Заранее спасибо.
← →
Германн © (2008-08-27 01:11) [1]
> Cursor:=crHourGlass;
А если попробовать написать
Screen.Cursor:=crHourGlass;
← →
Deltas © (2008-08-27 01:22) [2]
> Почему процедура
>procedure TForm1.FormMouseDown(Sender: TObject; Button:
> TMouseButton;
> Shift: TShiftState; X, Y: Integer);
> begin
> Cursor:=crHourGlass;
> end;
> изменяет курсор мыши только когда наступило MouseUp?
Видимо, какая-то ошибка в текстах модулей Delphi. Обрати внимание, что курсор изменяется после отпускания мыши только для левой кнопки. Для средней и правой он изменяется сразу.
> А если попробовать написать
>Screen.Cursor:=crHourGlass;
Это помогает. Есть еще один вариант, более сложный: переопределить обработчик события WM_LEFTBUTTONDOWN:unit Unit1;
interface
uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs;
type
TForm1 = class(TForm)
private
procedure OnLeftButtonDown(var Msg: TMsg); message WM_LBUTTONDOWN;
public
{ Public declarations }
end;
var
Form1: TForm1;
implementation
{$R *.DFM}
procedure TForm1.OnLeftButtonDown(var Msg: TMsg);
begin
Cursor := crHourGlass;
end;
end.
← →
Германн © (2008-08-27 01:28) [3]
> Видимо, какая-то ошибка в текстах модулей Delphi. Обрати
> внимание, что курсор изменяется после отпускания мыши только
> для левой кнопки. Для средней и правой он изменяется сразу.
>
>
Врядли это ошибка. Скорее дело в том, что левая кнопка по стандарту строго задействована только на тех контролах, которые можно "кликнуть" или "нажать". А вот правая (насчет средней ничего не знаю)...
← →
Deltas © (2008-08-27 01:30) [4]Кстати, между этими двумя вариантами есть разница. Предположим на форме размещена кнопка TButton. Если использовать Screen.Cursor := crHourGlass, курсор изменится и над формой и над кнопкой. Если использовать выше описанный метод переопределения обработчика, курсор изменится только лишь над формой, над кнопкой он останется прежним.
← →
Deltas © (2008-08-27 01:31) [5]
> А вот правая (насчет средней ничего не знаю)...
Это колесико мышки. Им тоже можно кликать.
← →
Германн © (2008-08-27 01:52) [6]
> Deltas © (27.08.08 01:31) [5]
>
>
> > А вот правая (насчет средней ничего не знаю)...
>
> Это колесико мышки. Им тоже можно кликать.
Что такое "средняя кнопка мышки" я знаю.
← →
ЛшдлуттнСфе (2008-08-27 05:18) [7]Колесико - это колесико. Никакого, кроме механического, отношения к средней кнопки не имеет.
← →
Jimmy (2008-08-27 22:16) [8]Screen.Cursor:=crHourGlass; помогло. Всем спасибо.
Страницы: 1 вся ветка
Текущий архив: 2008.10.05;
Скачать: CL | DM;
Память: 0.46 MB
Время: 0.008 c