-
برنامه فارسی در دلفی
سلام دوستان،
من مدتهاست دارم با دلفی برنامه نویسی میکنم ولی تا حالا نرم افزار فارسی درست نکردم باهاش. برای همین چند تا سوال داشتم از خدمتتون...
1- میخوام این برنامه تحت XP و ویستا درست کار کنه. باید فونت بخصوصی رو بکار ببرم؟ اصلا چه فونتی رو بذارم برای فرم ها بهتره؟
2- نیازی هست که تغییراتی در تنظیمات سیستم بدم یا همینکه فارسی در لیست زبانها باشه کافیه؟
3- چطوری کاری کنم که تمام اجزای فرم از راست به چپ بشه مثل منوها؟
4- راهی هست که بشه حتی دیالوگهای سیستم رو مثل MessageBox یا Open/Save dialogs تمام و کمال فارسی کرد یا باید دیالوگها رو خودم بسازم؟
اگه نکته خاصی به ذهنتون میرسه که من باید بدونم، ممنون میشم بهم بگین.
با تشکر از همه شما
-
سلام
1-نیاز به فونت خاصی نیست-من بیشتر از Tahoma و Mitra استفاده میکنم.
2-فارسی در لیست زبانها باشه کافیه.
3-خاصیت BiDiMode فرمهای برنامت را روی bdRightToLeft قرار بده.
4-در قسمت Project -> Option در قسمت Application در قسمت Title نام برنامت را فارسی بنویس. با اینکار تمامی دیالوگها با عنوان برنامه شما به فارس نمایش داده میشود. برای اینکه دکمه ها در دیالوگها فارسی باشه هم کدش رو بعد برات میذارم.
موفق باشی.
-
اینم کد فارسی کردن دکمه ها در دیالوگهای برنامتون.
کد:
function MyMessageDialog(const Msg: string; DlgType: TMsgDlgType; Buttons: TMsgDlgButtons; Captions: array of string): Integer;
var
aMsgDlg: TForm;
i: Integer;
dlgButton: TButton;
CaptionIndex: Integer;
begin
aMsgDlg := CreateMessageDialog(Msg, DlgType, Buttons);
captionIndex := 0;
for i := 0 to aMsgDlg.ComponentCount - 1 do
begin
if (aMsgDlg.Components[i] is TButton) then
begin
dlgButton := TButton(aMsgDlg.Components[i]);
if CaptionIndex > High(Captions) then Break;
dlgButton.Caption := Captions[CaptionIndex];
Inc(CaptionIndex);
end;
end;
Result := aMsgDlg.ShowModal;
end;
procedure TForm1.Button1Click(Sender: TObject);
begin
if MyMessageDialog('انتخاب شما ؟', mtConfirmation, mbOKCancel, ['تایید', 'انصراف']) = mrOk then
ShowMessage('بله')
else
ShowMessage('خیر');
end;
-
پس من این همه وقت داشتم با دلفی برنامه مینوشتم فارسی هم داشت و خبر نداشتم ، ممنون از سوالی که کردید و ممنون از جوابی که دادید .
-
دوست عزيز.
براي شوال دومت بايد عرض كنم كه شايدفقط بودن فارسي در ليست كافي نباشه!
در صورت بروز مشكل برو توي Regional Setting و حالت استاندارد نمايش رو از En به Fa تغيير بده!
تيك Extend Suppot رو هم بزن و Unicode رو هم فارسي كن.
اينجوري خيالت راحته!
-
از همتون بخصوص شاهرخ کیان عزیز بخاطر راهنماییهاتون ممنونم.