PDA

View Full Version : سوال: کمک برای نمایش تاریخ به صورت نشان داده شده در عکس



mehrdad1991h
پنج شنبه 06 مرداد 1390, 13:01 عصر
سلام
من میخوام تو برنامه ای که دارم به چنین چیزی بزارم
یه عکس که وقتی روش کلیک میشه تقویم باز بشه و تاریخ انتخاب بشه و تو تکستکت باکس ((یا لیبل)) نمایش داده بشه

73005

حالا من از DateTimePicker استفاده میکنم که زمان را هم میزنه
الان مشکلات من

1 - با کلیک روی عکس تقویم باز بشه ((مثل عکس))
2 - زمانی که به من نشون میده اول این که همون میلادی باشه بعد فقط این مدلی نشون بدهد
{روز - نام ماه میلادی (به حروف) - سال }

حالا مشکل ندارم هر مدلی میخواد باشه و فقط این ها که من میخوام بشه هرچی شما بگید همون:لبخند:

لطفا راهنمایی کنید از چی و چجوری استفاده کنم
اگه امکانش بود یه نمونه تست بهم بدید
خیلی لازمش دارم ولی به نتیجه ای نرسیدم

morteza271
پنج شنبه 06 مرداد 1390, 14:14 عصر
ببینید شما اگه تاریخ میلادی میخواین بهترین گزینه همون DateTimePicker خود دات نت هستش.که برای اینکه فقط تاریخ رو نشون بده باید خاصیت Format اون رو برابر Short قرار بدین.
DateTimePicker خودش یه تکست باکس داره که تاریخ انتخابی رو نشون میده و جلوس یه عکس هست که وقتی روش کلیک کنی تقویم رو نشون میده و میتونی یه تارخ رو انتخاب کنی و سپی اسن تاریخ انتخابی در تکست باکس نمایش داده میشه.
این کامپوننت (DateTimePicker ) دقیقا همون چیزهایی که شما میخواین رو داره.
موفق باشید

mehrdad1991h
پنج شنبه 06 مرداد 1390, 16:46 عصر
و جلوس یه عکس هست که وقتی روش کلیک کنی تقویم رو نشون میده خوب ببینید من الان این فایل را ضمیمه میزارم ببینید این عکسی که شما میگید را نداره
منم میدونم همین عکس را میشه آورد ولی نمیدونم چجوری
این عکسه را که شما دارین میگید الان از من نداره چی کارش کنم؟؟؟الان همه گیرم فقط سر همین عکس هست بقیه اش دیگه حله

یکی به من بگه این عکسه که جلوی DataTimePicker هست را چجوری میشه اوردش؟؟؟؟و چجوری میشه عکسش را عوض کرد
حالا عوض کردنشم نمیدونید همین بهم بگید چجوری بیارمش کارم راه افتاده
ممنون

اینم فایل ضمیمه
73016

mehrdad1991h
پنج شنبه 06 مرداد 1390, 17:10 عصر
اینجا تو عکس هم مشخصش کردم
73018
این قرمزه که مشخص کردم را از من نداره چجوری بیارمش و چجوری میشه با یه عکس دیگه عوضش کرد
مسئله مهم فعلا فقط اوردنش هست

morteza271
پنج شنبه 06 مرداد 1390, 17:34 عصر
دوست عزیز الان توی همین عکسی که گذاشتین که اون عکسه هست که!!!!!!!
پس چی میخواین؟

mehrdad1991h
پنج شنبه 06 مرداد 1390, 17:39 عصر
دوست عزیز الان توی همین عکسی که گذاشتین که اون عکسه هست که!!!!!!!
پس چی میخواین؟
ای بابا
ویندوز من اصلا از اون اول که عکس گذاشتم مشخص بود ایکس پی هست
تو این عکس اخری ویندوز 7 هست

بابا 2 ساعت گشتم به خاطر این که بتونم منظورم را برسونم
بفهمونم چی میخوام اینا تو اینترنت پیدا کردم برداشتم دور عکسش یه خط قرمز کشیدم گذاشتم اینجا
که بهم بگید چجوری بیارمش:گریه::گریه::گریه::گری ::گریه:

morteza271
پنج شنبه 06 مرداد 1390, 17:53 عصر
آهان خوب زودتر بگین!!من از کجا میدونستم شما اینو از تو نت پیدا کردین!!!شرمنده!
خوب پس حتما توی ویندوز ایکس پی نداره!!!!
میتونید از کامپوننت های دیگه استفاده کنید،مثلا Dev که یه عکس از DataTimePicker این کامپوننت براتون میذارم ببینید براتون خوبه یا نه؟
73026

mehrdad1991h
پنج شنبه 06 مرداد 1390, 18:24 عصر
بله پس از این همه سرچ یه نمونه پیدا کردم که اون ایکون هم داره
روی ویندوز ایکس پی ایکنه نمیاد:گریه:

توی کد پروژه هم یه کد پیدا کردم برا این که عکس بیاد
ولی من خیلی چیزی ازش سر در نیوردم شما یه نگاه بندازید

public partial class IconDateTimePicker : UserControl
{
MonthCalendar myCal;

public IconDateTimePicker()
{
InitializeComponent();

//set up myCal
myCal = new MonthCalendar();
myCal.Visible = false;

//hook the events
myCal.DateSelected += new DateRangeEventHandler(this.monthCalendar_DateSelec ted);
myCal.Leave += new EventHandler(this.monthCalendar_Leave);
}

//handle when the PictureBox is clicked
private void pictureBox1_Click(object sender, EventArgs e)
{
myCal.Visible = !myCal.Visible;
myCal.Focus();
}

//handle when the UserControl has been added to a form
private void IconDateTimePicker_ParentChanged(object sender, EventArgs e)
{
//add mycal to the parent
//you could also use a floating form
this.Parent.Controls.Add(myCal);
myCal.Left = (this.Left + this.pictureBox1.Right) - myCal.Width;
myCal.Top = this.Bottom + 5;
}

private void monthCalendar_DateSelected(object sender, DateRangeEventArgs e)
{
this.textBox1.Text = ((MonthCalendar)sender).SelectionStart.ToShortDate String();
myCal.Visible = false;
}

private void monthCalendar_Leave(object sender, EventArgs e)
{
myCal.Visible = false;
}
}

اینم ادرس لینکش

http://www.codeproject.com/Answers/143041/Datetime-picker-as-a-icon-in-Csharp-Windows-applic.aspx#answer1

دوستان اگه از کد بالا تونستن استفاده کنند یه نمونه هم به من بدن ممنونشون میشم


سپاس

morteza271
پنج شنبه 06 مرداد 1390, 19:15 عصر
من از کدی که گذاشتین استفاده کردم و یه نمونه برنامه درست کردم و براتون میذارم.
73028
موفق باشید

morteza271
پنج شنبه 06 مرداد 1390, 19:24 عصر
در ضمن آقا مهرداد اگه برای انتخاب تاریخ شمسی خواستین من خودم یه کامپوننت ساختم که فقط برای دریافت تاریخ شمسی هستش .
اینم عکسش :
73029
اگه میخوای کامپوننت رو در بخش نمونه برنامه های سی شارپ توی همین سایت گذاشتم.
میتونی دانلودش کنی و به ToolBox در ویژوال استودیو اضافش کنید و از استفاده کنید.
موفق باشید.

mehrdad1991h
شنبه 08 مرداد 1390, 00:25 صبح
خیلی ممنون
ببخشید که اینقدر من شما را اذیت کردم ، واقعا متاسفم
کاملا از انجام این کار که میخواستم بکنم منصرف شده بودم الان که دوباره به فروم سر زدم دیدم مشکل حل شده
دقیقا همون چیزی که میخواستم شد ! ((با استفاده از همون کد و نمونه ی شما))

((در ضمن مشکل این که عکس را جلوش نمیدیدم هم به خاطر ویندوز ایکس پی بود چون این چیزا را از خود dll های ویندوز میگیره))

کاربر گرامی ف جناب باز هم ببخشید که اینقدر شما را اذیت کردم ، از تمام لطفی که کردید ممنونم:قلب: