Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Начинающим";
Текущий архив: 2010.08.27;
Скачать: [xml.tar.bz2];

Вниз

TImage   Найти похожие ветки 

 
AlexCAHEK ©   (2010-04-02 13:13) [0]

Объясните недоучу! Как перемещать окно, если оно вырезано по картинке и не имеет формы? Тогда как TImage1.Visible := false; окно передвигается но ничего нет кроме кнопок,а когда true ничё не шевелится


 
И. Павел ©   (2010-04-02 13:17) [1]

Преформулируйте, пожалуйста, вопрос. А то я ничего не понял :) Может быть на форме нет заголовка, и ее нужно перетаскивать? Если да, то так:


> 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;


 
И. Павел ©   (2010-04-02 13:19) [2]

Преформулируйте -> переформулируйте


 
AlexCAHEK ©   (2010-04-02 14:39) [3]

Строки заголовка нет, только клиентская часть. Я указал переменную dragging,
создал обработчик события OnMouseDown и Move и Up. Вроде все как нужно. Но окно все равно не перемещается, только когда картинка скрыта. Надеюсь на вашу помощь


 
Jeer ©   (2010-04-02 14:42) [4]


> Надеюсь на вашу помощь


А можно вежливо нахамить ? :)


 
И. Павел ©   (2010-04-02 14:44) [5]

> [3] AlexCAHEK ©

Назначьте указанный мной в [1] обработчики на события OnMouseDown для формы и для Image. Так должно перетаскиваться.


 
AlexCAHEK ©   (2010-04-02 14:45) [6]

Можно


 
AlexCAHEK ©   (2010-04-02 14:50) [7]

Ок! Недогадался! Еще вопрос. Как можно отключить определенную клавишу, на время работы проги, например vk_f4?


 
И. Павел ©   (2010-04-02 14:54) [8]

Перехватывайте ее в ApplicationEbents и обнуляйте.


 
Омлет ©   (2010-04-02 14:54) [9]

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) [10]

Ebents -> Events


 
Сергей М. ©   (2010-04-02 14:55) [11]

> Как можно отключить определенную клавишу

Чем она тебе помешала ?


 
AlexCAHEK ©   (2010-04-02 15:09) [12]

Огромное спасибо!!! Пишу программу - прикол, с отключением клавиш. Заодно <Alt>+<f4> несработает. В процессах и на панели её тож естественно нет.


 
Jeer ©   (2010-04-02 15:10) [13]


> 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;


 
Сергей М. ©   (2010-04-02 15:11) [14]


> Пишу программу - прикол


Опоздал ты с "приколами)
день Дурака уже прошел)


 
oldman ©   (2010-04-02 15:12) [15]


> AlexCAHEK ©   (02.04.10 15:09) [12]


Когда бить придут - вот будет прикол!
:)))


 
Anatoly Podgoretsky ©   (2010-04-02 15:16) [16]

> Jeer  (02.04.2010 14:42:04)  [4]

А можно нахамить так, чтоб субъект не догадался?


 
Anatoly Podgoretsky ©   (2010-04-02 15:17) [17]

> AlexCAHEK  (02.04.2010 14:50:07)  [7]

А как она подключена, вот так можно и отключить.


 
Anatoly Podgoretsky ©   (2010-04-02 15:18) [18]

> AlexCAHEK  (02.04.2010 15:09:12)  [12]

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


 
AlexCAHEK ©   (2010-04-02 15:19) [19]

Блин, респект вам парни! Дайте совет неопытному!



Страницы: 1 вся ветка

Форум: "Начинающим";
Текущий архив: 2010.08.27;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.49 MB
Время: 0.062 c
2-1275564908
Б
2010-06-03 15:35
2010.08.27
Как узнать физические размеры монитора?


2-1270634702
Sairex
2010-04-07 14:05
2010.08.27
Как программно скопировать строку Excel


8-1204554483
CHO
2008-03-03 17:28
2010.08.27
Overlay


15-1268429405
Юрий
2010-03-13 00:30
2010.08.27
С днем рождения ! 13 марта 2010 суббота


9-1180439487
gray_falcon
2007-05-29 15:51
2010.08.27
Как реализовать графику на 2D движке





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский