PDA

View Full Version : اتفاق نیافتادن OnExit در حرکت به سمت عقب



hadi55
شنبه 11 تیر 1384, 21:47 عصر
سلام دوستان
چکار کنم که وقتی با کلیدهای Shift+tab به عقب بر میگردیم رویداد OnExit اتفاق نیوفتد . (در واقع میخوام کد داخل این رویداد انجام نشه.)

Hamid_PaK
شنبه 11 تیر 1384, 23:18 عصر
می تونی واضح تر منظورتو بیان کنی ؟؟ :گیج: :گیج:

hadi55
یک شنبه 12 تیر 1384, 12:01 عصر
می تونی واضح تر منظورتو بیان کنی ؟؟ :گیج: :گیج:
فرض کن توی یه فرم چند تا کامپوننت edit داشته باشیم که توی رویداد OnExit هر کدوم یه کدی نوشته باشیم حالا من میخوام وقتی با زدن کلید Shift + tab به سمت عقب حرکت میکنم رویداد OnExit اتفاق نیوفته یا حداقل توی این رویداده شرطی بذارم که بفهمه فوکوس به سمت عقب داره حرکت میکنه .

Touska
یک شنبه 12 تیر 1384, 12:17 عصر
چرا من امتحان کردم جواب می ده.

مشکل برنامه از جای دیگه هست.

:موفق:

hadi55
یک شنبه 12 تیر 1384, 13:45 عصر
چرا من امتحان کردم جواب می ده.

مشکل برنامه از جای دیگه هست.

:موفق:

ببخشید چی جواب میده

maryam.ili
یک شنبه 12 تیر 1384, 16:04 عصر
باید رویداد ان را nil کنی

Touska
دوشنبه 13 تیر 1384, 12:25 عصر
یعنی وقتی به عقب می ری کدی که در oNexit هست کار خودشو انجام می ده.

:موفق:

Hamid_PaK
دوشنبه 13 تیر 1384, 13:50 عصر
من یه چیزی نوشتم ولی فکر نکنم زیاد بدردت بخوره اشکالش اینه که وقتی کلید Shift رو میگیری دیگه کار نمی کنه !!!
::




procedure TForm1.Button1KeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
begin
if (GetKeyState(VK_SHIFT) < -100) then
aBack := True;
end;


procedure TForm1.Button5Exit(Sender: TObject);
begin
if aBack then begin
Caption := 'Backing . . .';
aBack := False;
end else begin
Caption := 'Go Away . . .';
end;
end;

private
...................
aBack:Boolean;
...................
end;


موفق باشی :)