mbshareat
دوشنبه 13 بهمن 1404, 17:48 عصر
سلام
میخوام وقتی کاربر Ctrl+Shift میزنه، زبان به تناسب عوض بشه و وقتی Alt+Shift بزنه، BidiMode عوض شه.
ظاهرا باید پیامها رو هندل کنم.چیزی مثل:
procedure AppMessage(var Msg: TMsg; var Handled: Boolean);
procedure TFileBrowserForm.AppMessage(var Msg: TMsg; var Handled: Boolean);
begin
if (Msg.hwnd = Edit1.Handle)
and (Msg.Message=WM_KEYDOWN) then
Begin
if (GetKeyState(VK_CONTROL) < 0){control isdown} then
Begin
Handled:=true;//برای اینکه یک سطر اضافه ایجاد نکنه
Exit;
End;
End;
End;
چیزی که عجیبه اینه که Edit1.Alignment:=taLeftJustify; موجپ چپ چین شدن نمیشه.در حالیکه BidiMode این کار رو می کنه و برای ترتیب نوشتن حروف عبارت هست نه چسبیدن به راست و چپ.
میخوام وقتی کاربر Ctrl+Shift میزنه، زبان به تناسب عوض بشه و وقتی Alt+Shift بزنه، BidiMode عوض شه.
ظاهرا باید پیامها رو هندل کنم.چیزی مثل:
procedure AppMessage(var Msg: TMsg; var Handled: Boolean);
procedure TFileBrowserForm.AppMessage(var Msg: TMsg; var Handled: Boolean);
begin
if (Msg.hwnd = Edit1.Handle)
and (Msg.Message=WM_KEYDOWN) then
Begin
if (GetKeyState(VK_CONTROL) < 0){control isdown} then
Begin
Handled:=true;//برای اینکه یک سطر اضافه ایجاد نکنه
Exit;
End;
End;
End;
چیزی که عجیبه اینه که Edit1.Alignment:=taLeftJustify; موجپ چپ چین شدن نمیشه.در حالیکه BidiMode این کار رو می کنه و برای ترتیب نوشتن حروف عبارت هست نه چسبیدن به راست و چپ.