PDA

View Full Version : fi to fa



lord_viper
شنبه 16 مهر 1384, 09:45 صبح
با سلام
من یه برنامه fitofaدارم مینویسم که 2 با ممو داره کلیدهای فارسی رو نوشتم براش ولی نمیدونم برای دکمه های spaceو interچکار کنم و در ضمن bidimode memo2رو چطور تنظیم کنم که حالت نوشتن توmemo2از راست به چ÷ بشه
با تشکر

m-khorsandi
شنبه 16 مهر 1384, 10:50 صبح
درود
BidiMode میبایست برابر با bdRightToLeft باشه تا به صورت راست چین نمایش داده بشه.
در مورد برنامه ایی که مینویسید بیشتر توضیح بدید، تا اطلاعات بهتری بدست بیارید.

MNosouhi
شنبه 16 مهر 1384, 23:11 عصر
کلید های فاصله و اینتر رو باید خودتون مدیریت کنید.
بگو دقیقا کجاش گیر کردی تا کمکت کنیم

lord_viper
یک شنبه 17 مهر 1384, 09:44 صبح
من درmemo2 charset,font,bidiرو عوض کردم و در رویداد onkeydown memo1از این دستور برای شبیه سازی استفاده کردم
if key=65 then
memo2.text:=memo2.text+'ا';
استفاده کردم حالا نمیدونم enterوspaceرو برای memo2چیکار کنم

m-khorsandi
یک شنبه 17 مهر 1384, 10:35 صبح
از این کد استفاده کنید:


procedure TForm1.Memo1KeyDown(Sender: TObject; var Key: Word; Shift: TShiftState);
begin
Case Key of
13: ShowMessage('Enter...');
32: ShowMessage('Space');
end;
end;

Naficy
سه شنبه 19 مهر 1384, 13:33 عصر
در رویداد OnKeyDown چیزی که در پارامتر Key برای شما ارسال می شود Virtual Key Code است.
اگر به هلپ دلفی هم مراجعه کرده بودید (ذیل همین OnKeyDown) لینکی می یافتید به جدولی مربوط به همین کدها. برای enter و space هم از VK_Rerturn و VK_Space استفاده کنید.

ضمنا بجای اینکه از

memo2.text:=memo2.text+'ا';
استفاده کنید، خود مقدار پارامتر Key را تغییر دهید.
ضمنا رویداد OnKeyPress برای کار شما بهتره چون از Virtual Key Code استفاده نمی کنه.