-
نقل قول: كامپوننت تقويم شمسی
با سلام
مشکل تغییر ماه از 31 روزه به 30 روزه را فهمیدم و در اینجا سورس آنرا میگذارم تا اگر برای کسی پیش آمد مثل من نصف روز وقت نگذارد تا سورس را بفهمد.
باید در روتینMonthComboClick عین زیر بنویسید سپس پروژه تان را اجرا کنید
دو خط از برنامه پاک شده اند (مقایسه با ماه 6 و روز 31 که اشتباها روز را به اضافه یک میکرد) الان برای تغییر ماه هیچ مشکلی ندارد. موفق باشید
Procedure TCustomSolarCalendar.MonthComboClick(Sender: TObject);
begin
FPrevMenuItem := FMonthCombo.ItemIndex + 1;
FCurrMonth := FMonthCombo.ItemIndex + 1;
if FCurrDay > DaysOfMonths[DateKind, FCurrMonth] then
FCurrDay:=DaysOFMonths[DateKind,FCurrMonth];
OutDate := ConcatenateDate(FCurrMonth, FCurrYear, FCurrMonth, FCurrDay);
FInDate := OutDate; //1384-03-15
MonthChanging();
end;
راستی اشکال دیگر راهم متوجه شدم. مربوط به AdvPane استفاده شده در فرمم بود( تقویم را برروی AdvPanel گذاشته بودم) با گذاشتن تقویم روی فرم مشکلم حل شد.
-
1 ضمیمه
نقل قول: كامپوننت تقويم شمسی
سلام خسته نباشی
یه مشکل کوچیک هست. توی solar date picker رنگ فونت سال سفیده و توی زمینه معلوم نیست. چطوری میشه رنگ رو تغییر داد؟ عکسش رو میذارم ببینید. توی MonthCalender میشه رنگ زمینه رو عوض کرد اما تو حالت XPMode زمینه سفید میشه و توی DatePicker هم رنگ رو نمیشه عوض کرد. راهنمایی کنید که یا رنگ زمینه عوض بشه یا رنگ متن
ممنون
-
نقل قول: كامپوننت تقويم شمسی
سلام.چطور این کامپوننت رو استفاده کنم؟مرسی
-
نقل قول: كامپوننت تقويم شمسی
نقل قول:
نوشته شده توسط
h4818t
سلام خسته نباشی
یه مشکل کوچیک هست. توی solar date picker رنگ فونت سال سفیده و توی زمینه معلوم نیست. چطوری میشه رنگ رو تغییر داد؟ عکسش رو میذارم ببینید. توی MonthCalender میشه رنگ زمینه رو عوض کرد اما تو حالت XPMode زمینه سفید میشه و توی DatePicker هم رنگ رو نمیشه عوض کرد. راهنمایی کنید که یا رنگ زمینه عوض بشه یا رنگ متن
ممنون
در بخش سورس کامپوننت به پروسیجر procedure TCustomSolarCalendar.CreateObjects(); رفته و اینو تغییر بدید
with FYear do
begin
Parent := FCaption;
Font.Color := clBlack;
موفق باشید
-
نقل قول: كامپوننت تقويم شمسی
جناي آقاي خرسندي با سلام و تشكر از كامپوننت بسيار عالي كه طراحي كرديد .
بنده در استفاده از كامپوننت دچار اشكال شدهام . زماني كه از SolarDatePicker استفاده ميكنم ، و كادر تقويم مربوطه بسته ميشود رويداد OnActivate فرم دوباره اجرا ميشود .
با توجه به اينكه در رويداد مذكور برخي متغيرها را تعريف و مقداردهي كردهام و در طي اجراي فرم برخي از اين متغيرها تغيير ميكنند لذا با استفاده از SolarDatePicker دوباره مقادير تمامي متغيرها به مقادير تعريف شده در رويداد OnActivate فرم تغيير مييابند .
در صورت امكان راهنمائي كنيد چگونه اين مشكل را حل كنم .
با تشكر مجدد معيني .
-
نقل قول: كامپوننت تقويم شمسی
نقل قول:
نوشته شده توسط
m-khorsandi
اقا لينكش خرابه دانلود نميشه
-
نقل قول: كامپوننت تقويم شمسی
-
2 ضمیمه
نقل قول: كامپوننت تقويم شمسی
با سلام.
آقای خرسندی مشکلی در تقویم دیدم که خواستم راه حلش رو بگین چطوریه.
در تصویر زمیمه شماره 1 وقتی بر روی روزهای مشخص شده کلیک میکنیم به جای اینکه روی همان روز در ماه بعد برود روی همان جایی که کلیک کرده ایم در ماه بعد قرار میگیره. مثلا در این تصویر اگر روی نهم دی ماه کلیک کنیم به جای اینکه بر روی همان روز قرار بگیره بر روی همان خانه از بهمن ماه قرار میگیرد یعنی بر روی هفتم بهمن ماه قرار میگیره.
در تصویر زمیمه شماره 2 بهتر بود رنگ روزهای جمعه به رنگ روز جاری باشه. یعنی رنگش روشن تر باشه. در این مورد میشه از نظر بقیه دوستان هم استفاده کرد.
با تشکر.
-
نقل قول: كامپوننت تقويم شمسی
درسته،
راه حلش اینه که کدش رو تغییر بدید یا صبر کنید نسخه ی جدید رو به زودی آپلود کنم.
-
نقل قول: كامپوننت تقويم شمسی
مهندس من هم میدونم باید کد رو تغییر داد اما نمیدونم چه قسمتیش رو باید تغییر داد. برای همین این سوال رو پرسیدم. اگه لطف کنید و بفرمایید کجای کد باید تغییر بکنه ممنون میشم.
-
نقل قول: كامپوننت تقويم شمسی
من تو SolarCalendar وقتی تعداد ماههایی که با استفاده از تابع
incmonth اضافه میکنم بیشتر از 1 سال باشه اشتباه محاسبه
میکنه مثلا وقتی به تاریخ 1389/7/14 ، 6 ماه اضافه میکنم عوض
اینکه بیاره 1390/1/14 میاره 1390/6/14 دلیلش چیه؟
2.27.20 فکر کنم آخرین ورژنش باشه
-
نقل قول: كامپوننت تقويم شمسی
با سلام همه دوستان و تشکر از آقای خورسندی
تا اونجایی که من با این کامپوننت کار کردم متوجه شدم که در صورت استفاده از SolarDtePicker و یا SolarMonthCalendar بر روی فرم خود می توانیم از توابعی که برای اونها تعریف شده استفاده کنیم.مثلا اگه به تاریخ جاری سیستم بصورت شمسی نیاز داریم می تونیم از تابع GetDateWithDiv استفاده کنیم.
سوال من اینه:اگه جایی نیاز بود که فقط با تاریخ توی کدهامون سروکار داشته باشیم و لازم نباشه چیزی به کابر نشون داده بشه این توابع بصورت یک Utility در دسترس نیستند؟بعضی ها گفتند خوب می تونید از تقویم های دیگه مثل Solarutl یا Persian.dll یا Shamsi.dll استفاده کنید!خوب به نظرم این منطقی نیست توی برنامه ام از 2کامپوننت برای 1کار استفاده کنم.
سوال من از آقای خورسندی اینه که آیا همچین چیزی توی کامپوننت شما هست و شاید من ازش بی خبرم؟و اگه نیست آیا دلیل خاصی داشتن که اینکارو نکردن؟(بهرحال یقینا همچین چیزی به فکرتون رسیده و بعنوان 1برنامه نویس بهش فکر کردین)
با تشکر
-
نقل قول: كامپوننت تقويم شمسی
آقاي خوسندي يه مشكل در استفاده از SolarDatePicker دارم.
زماني كه در SolarDatePicker بر روي روز مورد نظر كليك ميكنم و تاريخ در اديت قرار ميگيره، Focus از روي فرم برداشته ميشه و روي فرم ديگه اي قرار ميگيره و حتما بايد دوباره روي فرم كليك كنم تا Focus روي آن برگردد. لطفا راهنمايي كنيد كه چه طور اين مشكل رو حل كنم؟
يه سوال ديگه هم داشتم.
آيا SolarDatePicker رويداد OnDayClick داره يا نه؟ اگه نداره آيا ميشه بهش اضافش كرد؟
اگه اين رويداد وجود داشت ميشد مشكل بالا رو يه جوري حل كرد.
-
نقل قول: كامپوننت تقويم شمسی
سلام و عرض ادب
نميدانم در جريان اين مشكل هستيد يا خير و اصلا اين مشكل من است يا خير
اما ديروز در تستهاي برنامه ام متوجه شدم كه با كليك بروي "امروز" تاريخ معادل فارس اشتباه برگردانيده ميشود . ماه 3 رقي است . من انرا بدين صورت اصلاح كردم و با تاريخهاي مختلف چك كردم . ويندوز من 7/32 و دلفي من 2010 است از فارسي ساز خودم استفاده ميكنم كه هيچ نوع فونتي را نصب نميكند و هيچ تغيري در Date نميدهد . فرمت تاريخ را در برنامه ام dd/mm/yyyy قرار ميدهم
function ConcatenateDate(ACurrMonth: integer; AYear, AMonth, ADay: Word): String;
var
Y,M,D,
Output: String;
begin
Y:=IntToStr(AYear);
if ACurrMonth < 10 then
M := '0' + IntToStr(AMonth)
else
M := IntToStr(AMonth) ;
if Length(M)=3 then
Delete(M,1,1);
if ADay < 10 then
D := D + '0' + IntToStr(ADay)
else
D := D + IntToStr(ADay);
Output:=Y+'/'+M+'/'+D;
Result := Output;
// Y:=IntToStr(AYear);
// Output := + '/';
//
// if ACurrMonth < 10 then
// Output := Output + '0' + IntToStr(AMonth) + '/'
// else
// Output := Output + IntToStr(AMonth) + '/';
//
// if ADay < 10 then
// Output := Output + '0' + IntToStr(ADay)
// else
// Output := Output + IntToStr(ADay);
//
// Result := Output;
end;
-
نقل قول: كامپوننت تقويم شمسی
یک خطا:
این کامپوننت در نمایش متون فارسی مشکل دارد( من از Delphi XE) استفاده می کنم.
-
نقل قول: كامپوننت تقويم شمسی
دوستان من اگر بخوام به یک کپشن تاریخ روز بدم چه کار کنم
-
نقل قول: كامپوننت تقويم شمسی
-
نقل قول: كامپوننت تقويم شمسی
نقل قول:
نوشته شده توسط
kazifasa
دوستان من اگر بخوام به یک کپشن تاریخ روز بدم چه کار کنم
براي اين كار يك solarmonthcalendar روي فرم قرار دهيد و انرا Invisible كنيد سپس براي تغيير كپشن ليبل دستور زير را بنويسيد .
Label1.Caption:=SolarMonthCalendar1.SolarDate;
موفق باشيد .
-
نقل قول: كامپوننت تقويم شمسی
در هنگام اضافه کردن روز با تابع IncDay ، بعد از چند بار اضافه کردن یک عدد خاص به تاریخ مورد نظر ، کامپوننت تاریخ رو اشتباه حساب میکنه.
مثلا اگه از 138/1/1 عدد 7 رو اضافه کنید ، بعد از اردیبهشت به بعد تاریخ ها رو اشتباه حساب میکنه.
-
نقل قول: كامپوننت تقويم شمسی
نقل قول:
نوشته شده توسط
hadisalahi2
در هنگام اضافه کردن روز با تابع IncDay ، بعد از چند بار اضافه کردن یک عدد خاص به تاریخ مورد نظر ، کامپوننت تاریخ رو اشتباه حساب میکنه.
مثلا اگه از 138/1/1 عدد 7 رو اضافه کنید ، بعد از اردیبهشت به بعد تاریخ ها رو اشتباه حساب میکنه.
توصيه اكيد دارم به منظور اجتناب از اينگونه اشكالها اين كامپوننت را روي يك فرم قرار دهيد و سپس فرم را در زمان درياف تاريخ ايجاد (Create)و بعد هم از بين ببريد(FreeAndNil)
-
نقل قول: كامپوننت تقويم شمسی
چطوری میشه دانلودش کرد؟1
هر کاری می کنم به صفحات مختلفی لینک میکنه و نمی دونم چطوری دانلود کنم!!!
-
نقل قول: كامپوننت تقويم شمسی
سلام
بازم دانلود نشد
مثل همیشه این پیغام رو میده
problems with the download? Please use this direct link or try another mirror.
ممنون میشم کسی کمک کنه
-
نقل قول: كامپوننت تقويم شمسی
معمولن بعد از اینکه این پیغام نمایش داده میشه باید صبر کنید تا دانلود منیجر یا براوزرتون شروع به دانلود کنه،
اگه این اتفاق نیفتاد روی لینک direct link کلیک کنید تا مستقیمن دانلود کنید.
-
نقل قول: كامپوننت تقويم شمسی
با عرض سلام و خسته نباشید خدمت دوستان
بنده فقط اومدم بگم از کامپوننت SolarCalendarPack استفاده نکنید چونکه من از این کامپپوننت در یکی از پروژه هام استفاده کردم . کار پروژه چندین ماهی طول کشید و این کامپوننت کاملاً درست کار می کرد ولی در اتمام کار با اضافه سازی شی ای از کامپوننت سویی پک پروژه ام دچار مشکل شد و دلفی خطا Duplication resurce داد . بعد از یک روز تلاش ، تازه فهمیدم مشکل از سولار و دقیقاً به فایل calender...res گیر میداد . بعد از حذف سولار پروژه سکته کرده من دوباره زنده شد . فقط خواستم تجربه ام انتقال بدم تا کسی دیگه مثل من اینطور ضد حال نخوره . موفق باشید.
-
نقل قول: كامپوننت تقويم شمسی
مطمئن باش كه اگه مشكل Duplicate Resource پروژهات رو اينجا مینوشتی، زودتر به نتيجه میرسيدی و نيازی نبود يك روز برای چنين مشكلی تلاش كنی!
-
نقل قول: كامپوننت تقويم شمسی
آقای خرسندی ، با سلام ، هنوز منتظر نسخه جدید هستیم . با تشکر
-
نقل قول: كامپوننت تقويم شمسی
با سلام و خسته نباشيد آقاي خرسندي
موقعي كه در قسمت سال مقدار سال را دستي تايپ ميكنيم با زدن كليد اينتر مقدار سال تاييد ميشود ولي با زدن اينتر دوم ارور ميدهد
اگر بعد از تايپ سال با كليد تب خاج شويم و ثبت شود يعني On Exit خيلي بهتره
با تشكر از شما
-
نقل قول: كامپوننت تقويم شمسی
سلام جناب خورسندی و خسته نباشید
بعد از چند وقت که از کامپوننت شما تو پروژه های مختلف استفاده کردم لازم دونستم که مراتب تشکر خودم را اعلام کنم.از نظر من کامپوننت شما بهترین کامپوننت تقویم شمسی هستش.فقط دو مورد را به نظرتون می رسونم :
1- فایل راهنما همراه فایلهای پروژه تو sourceforge نیست بهتره این فایل را هم قرار بدید تا دوستان مبتدی بتونن یکجا همشو دانلود کنن البته لینک دانلود فایل pdf یه جایی تو همین تاپیک هست ولی فایل اونجا هم باشه بهتره.
2- جایی تو همین تاپیک دیدم قول داده بودید که قابلیت اتصال به دیتابیس را اضافه می کنید. هنوز هم تصمیم دارید این کار رو انجام بدید؟
بازم تشکر می کنم بابت کامپوننت خوبتون
-
نقل قول: كامپوننت تقويم شمسی
اگ بخواهیم روی یک سال پیش فرض مثلا 1390 بیاید و سال را بین دو مقدار مثلا 1389 و 1390 محدود کنیم چه کدهایی باید بنویسیم؟
-
نقل قول: كامپوننت تقويم شمسی
کوووووووووووووووووووووووو ووووووووووووووووووووووووو وووووووووووووووو
این فایل راهنمات کووووووووووووووووشش
کوش
آدم یه کاری هم می کنه درست بکنه ، نه اینکه نصفه کاره ولش بکنه .
یه راهنمایی چیزی
تو همین تاپیک صدهزار بار افراد مختلف گفتند راهنما راهنما
آخه کوووووووووووووووووووووووو وووووووو
نقل قول:
نوشته شده توسط
m-khorsandi
اطلاعاتی كه خواستی رو با اين كامپوننت ميتونی داشته باشی،
اين توابع كمكت ميكنن:
MonthName
DayName
Year
Month
Day
بقيهاش رو هم تو
فايل راهنما ببين.
-
نقل قول: كامپوننت تقويم شمسی
-
نقل قول: كامپوننت تقويم شمسی
من دارم یکی از پروژه هام رو از دلفی 7 به 2010 تغییر می دهم
ولی به سختی همه کامپوننتها یم رو به 2010 تغییر داده ام یا جدیدش را سرچ کردم و دانلود کرده ام.
و حالا که رسیده ام به این یکی وقتی برنامه را اجرا کردم فونتهایش بهم ریخته بازهم جدیده رو دانلود کردم ولی فرقی نکرد
ویندوز من 7 است
ولی فول فارسی اش نکرده ام
می دونم اگر بکنم این مشکل حل می شود ولی فکر می کنم مشکل دیگری ظاهر می شود یعنی همون مشکل یونیکد در دلفی 7 ولی نه اون مشکل بلکه ظاهرا همون مشکل
چون من برنامه را در یک سیستم که فول فارسی است نوشته ام و اگر در سیستمی که فول فارسی نیست اجرایش بکنم فونت و نوشته های نا مفهوم می آید. درست می گویم.
کمک بکنید.
-
نقل قول: كامپوننت تقويم شمسی
نقل قول:
نوشته شده توسط
tadeh2010
کوووووووووووووووووووووووو ووووووووووووووووووووووووو وووووووووووووووو
این فایل راهنمات کووووووووووووووووشش
کوش
آدم یه کاری هم می کنه درست بکنه ، نه اینکه نصفه کاره ولش بکنه .
یه راهنمایی چیزی
تو همین تاپیک صدهزار بار افراد مختلف گفتند راهنما راهنما
آخه کوووووووووووووووووووووووو وووووووو
فایل راهنما رو از اینجا میتونی بگیری.
-
نقل قول: كامپوننت تقويم شمسی
آقای خورسندی امکانش هست یه ایمیل بدید تا باهاتون در ارتباط باشم؟
-
نقل قول: كامپوننت تقويم شمسی
با سلام من Solar Calendar Package_2.27.20 رو دانلود کردم و تو Delphi XE ازش استفاده می کنم اما یه مشکلی که داره وقتی ماه های قبل یا ماه های بعدی رو انتخاب می کنم و روی هر کدام از روزا کلیک می کنم خاصیت INDate اون 32 اون ماه رو نشون میده ، اگه میشه راهنماییم کنین.
-
نقل قول: كامپوننت تقويم شمسی
سلام
کامپوننت تبدیل میلادی به شمسی و ... فانکشن تبدیل میلادی به شمسیش مشکل داره - الان من تاریخ 23/09/2011 رو که بهش میدم یعنی امروز - تاریخ 1390/07/06 رو بر میگردونه !!!
-
1 ضمیمه
نقل قول: كامپوننت تقويم شمسی
سلام .. آیا امکان وصل به دیتا ست هم داره ؟ ... من با shdate کار میکنم بدم نمیاد کار شما رو هم هم ببینم ضمیمه 76877
-
نقل قول: كامپوننت تقويم شمسی
تشکر آقای خرسندی
ولی یک مشکل!
آیا تا به حال در سیستمی که تاریخش با فرمتی بجز آن فرمتی که در برنامه تعریف شده است از برنامه تان استفاده کرده اید؟
البته تاریخ شمسی از نوع رشته است ولی تاریخ میلادی چی؟
من که با انبوهی از مشکلات رو برو شدم;تا آنجا که از استفاده ی کامپوننت شما در برنامه هایم منصرف شده ام.
لطفا یا راهنماییم بکنید یا مشکل را حل نمایید.
با سپاس فراوان.
-
نقل قول: كامپوننت تقويم شمسی
لطفاً تمام دوستانی كه از اين كامپوننت استفاده ميكنن نظرات، اشكالات و نيازهاشون رو بنويسن تا ظرف چند روز آينده، حداكثر اين موارد اعمال بشه و نسخهی جديد رو آپلود كنم،
اگه اشكالی وجود داره، فرآيند توليد اشكال به صورت كامل نوشته بشه تا وقت كمتری برای رفع اشكال صرف بشه و
اگه نيازی وجود داره، به صورت كامل شرح داده بشه تا نيازی به پرسش و پاسخ نباشه.
ممنون
-
نقل قول: كامپوننت تقويم شمسی
سلام استاد گرامی و جناب خرســـنـــدی
به نظر من بهتر است در برنامه تان روز ، ماه و سال به صورت عددی به برنامه پاس داده شود (در حال حاضر فقط مقدار text که از نوع رشته است این کار را می کند).
ولی مشکل فوق (که اگر تاریخ سیستم با یک فرمت دیگر باشد) در داخل کا مپوننت به مشکل بر می خوریم ولی من فکر کردم اگر از طریق سه پارامتر عددی بشود تاریخ را به کامپوننت پاس کرد می توانید در خود کامپوننت از تابع encodedate برای ساخت تاریخ با فرمت سیستم استفاده بکنید .
متشکرم .