PDA

View Full Version : سوال: تعریف مجموعه ای از رشته های فارسی



Bita.Jo
چهارشنبه 28 مهر 1389, 15:18 عصر
با سلام
من می خواهم یک مجموعه از روزهای هفته تعریف کنم ولی هرکار می کنم خطا میده روزهای هفته را شنبه ، یکشنبه ،... تعریف کرده ام بصورت زیر:


type
weekday=('شنبه','یکشنبه','دوشنبه', 'سه شنبه','چهارشنبه','پنج شنبه','جمعه');


var
WeeklySelected: set of Weekday;


اما خطای

[DCC Error] uDefWorkDateDlg.pas(11): E2029 Identifier expected but string constant found

در خط قرمز شده رخ میدهد راههای زیادی رفتم اما همه را خطا میدهد.

من میخواهم یک مجموعه از رشته فارسی داشته باشم (عناصر آن روزهای هفته اند که با توجه به انتخاب کاربر به مجموعه اضافه یا از آن کم می شوند.
کسی راه حلی سراغ داره؟
راه حلهای توی سایتهای Delphi برای روزهای هفته انگلیسی درست مثل راه بالاست ولی بدون '' در اول و آخر کلمات.:متفکر:

tdkhakpur
چهارشنبه 28 مهر 1389, 15:29 عصر
خب تعریف نام برای عملیات کامپایل اجازه استفاده از لغات غیر استاندارد و همچنین داده های رشته ای و عددی رو نمیده شما میتونید از حروف لاتین همانطور که اشاره کردید استفاده کنید بعد داخل case تبدیل را انجام بدید.

Felony
چهارشنبه 28 مهر 1389, 18:31 عصر
با سلام
من می خواهم یک مجموعه از روزهای هفته تعریف کنم ولی هرکار می کنم خطا میده روزهای هفته را شنبه ، یکشنبه ،... تعریف کرده ام بصورت زیر:


type
weekday=('شنبه','یکشنبه','دوشنبه', 'سه شنبه','چهارشنبه','پنج شنبه','جمعه');


var
WeeklySelected: set of Weekday;


اما خطای

[DCC Error] uDefWorkDateDlg.pas(11): E2029 Identifier expected but string constant found

در خط قرمز شده رخ میدهد راههای زیادی رفتم اما همه را خطا میدهد.

من میخواهم یک مجموعه از رشته فارسی داشته باشم (عناصر آن روزهای هفته اند که با توجه به انتخاب کاربر به مجموعه اضافه یا از آن کم می شوند.
کسی راه حلی سراغ داره؟
راه حلهای توی سایتهای Delphi برای روزهای هفته انگلیسی درست مثل راه بالاست ولی بدون '' در اول و آخر کلمات.:متفکر:





اساسا مشکل کلمات فارسی نیست ، مشکل این هست که نمیتونید از رشته استفاده کنید و بدون استفاده از رشته هم امکان استفاده از کارکتر Space رو ندارید ، یعنی کد زیر رو میتونید استفاده کنید :
type
weekday=(شنبه, یکشنبه, دوشنبه, سهشنبه, چهارشنبه, پنجشنبه);

var
Test: Set of weekday;
begin
Include(Test, شنبه);
end;

ولی دیکته کلمات صحیح نیست ( با توجه به عدم امکان قرار دادن فاصله در نام ها ) که فکر نمیکنم در کدنویسی مهم باشه ، در آخر بهتره از نام فینگلیس استفاده کنید چون در هر صورت کاربر برنامه شما قرار نیست با این مجموعه داده ای به صورت مستقیم تعامل داشته باشه .