![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
TImage [D7, 2000, XP]
AlexCAHEK © (2010-04-02 13:13:00)Объясните недоучу! Как перемещать окно, если оно вырезано по картинке и не имеет формы? Тогда как TImage1.Visible := false; окно передвигается но ничего нет кроме кнопок,а когда true ничё не шевелится
AlexCAHEK (2010-04-02 15:19:00) [1]Блин, респект вам парни! Дайте совет неопытному!
Anatoly Podgoretsky (2010-04-02 15:18:00) [2]> AlexCAHEK (02.04.2010 15:09:12) [12]
За приколы бьют по морде и здесь это тоже не приветсвуется
Anatoly Podgoretsky (2010-04-02 15:17:00) [3]> AlexCAHEK (02.04.2010 14:50:07) [7]
А как она подключена, вот так можно и отключить.
Anatoly Podgoretsky (2010-04-02 15:16:00) [4]> Jeer (02.04.2010 14:42:04) [4]
А можно нахамить так, чтоб субъект не догадался?
oldman (2010-04-02 15:12:00) [5]
> AlexCAHEK © (02.04.10 15:09) [12]
Когда бить придут - вот будет прикол!
:)))
Сергей М. (2010-04-02 15:11:00) [6]
> Пишу программу - прикол
Опоздал ты с "приколами)
день Дурака уже прошел)
Jeer (2010-04-02 15:10:00) [7]
> AlexCAHEK © (02.04.10 14:45) [6]
>
> Можно
Спасибо, постараюсь вежливо:
private
{ Private declarations }
procedure WMNCHitTest (var M:TWMNCHitTest);message wm_NCHitTest;
//***
implementation
{$R *.DFM}
procedure TForm1.WMNCHitTest (var M:TWMNCHitTest);
begin
inherited;
if M.Result=htClient then M.Result:=htCaption;
end;
AlexCAHEK (2010-04-02 15:09:00) [8]Огромное спасибо!!! Пишу программу - прикол, с отключением клавиш. Заодно <Alt>+<f4> несработает. В процессах и на панели её тож естественно нет.
Сергей М. (2010-04-02 14:55:00) [9]> Как можно отключить определенную клавишу
Чем она тебе помешала ?
И. Павел (2010-04-02 14:54:00) [10]Ebents -> Events
Омлет (2010-04-02 14:54:00) [11]
type
TForm1 = class(TForm)
procedure FormMouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer);
procedure FormMouseUp(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer);
procedure FormMouseMove(Sender: TObject; Shift: TShiftState; X, Y: Integer);
private
fDown: Boolean;
fPos: TPoint;
end;
var
Form1: TForm1;
implementation
{$R *.dfm}
procedure TForm1.FormMouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer);
begin
if Button = mbLeft then
begin
fDown := True;
fPos := Point(x, y);
end;
end;
procedure TForm1.FormMouseMove(Sender: TObject; Shift: TShiftState; X, Y: Integer);
begin
if fDown then
begin
SetBounds(Left - (fPos.x - x), Top - (fPos.y - y), Width, Height);
// fPos := Point(x, y);
end;
end;
procedure TForm1.FormMouseUp(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer);
begin
if Button = mbLeft then
fDown := False;
end;
</
И. Павел (2010-04-02 14:54:00) [12]Перехватывайте ее в ApplicationEbents и обнуляйте.
AlexCAHEK (2010-04-02 14:50:00) [13]Ок! Недогадался! Еще вопрос. Как можно отключить определенную клавишу, на время работы проги, например vk_f4?
AlexCAHEK (2010-04-02 14:45:00) [14]Можно
И. Павел (2010-04-02 14:44:00) [15]> [3] AlexCAHEK ©
Назначьте указанный мной в [1] обработчики на события OnMouseDown для формы и для Image. Так должно перетаскиваться.
Jeer (2010-04-02 14:42:00) [16]
> Надеюсь на вашу помощь
А можно вежливо нахамить ? :)
AlexCAHEK (2010-04-02 14:39:00) [17]Строки заголовка нет, только клиентская часть. Я указал переменную dragging,
создал обработчик события OnMouseDown и Move и Up. Вроде все как нужно. Но окно все равно не перемещается, только когда картинка скрыта. Надеюсь на вашу помощь
И. Павел (2010-04-02 13:19:00) [18]Преформулируйте -> переформулируйте
И. Павел (2010-04-02 13:17:00) [19]Преформулируйте, пожалуйста, вопрос. А то я ничего не понял :) Может быть на форме нет заголовка, и ее нужно перетаскивать? Если да, то так:
> procedure TForm1.FormMouseDown(Sender: TObject; Button:
> TMouseButton;
> Shift: TShiftState; X, Y: Integer);
> const
> SC_DragMove = $F012;
> begin
> ReleaseCapture;
> self.Perform(WM_SysCommand, SC_DragMove, 0);
> end;