با سلام
list.png
می خواستم وقتی که دکمه شروع رو زدم تو لیست ویو تایمرش شروع به حرکت کنه
لطفا اگه می تونید کمکم کنید
با سلام
list.png
می خواستم وقتی که دکمه شروع رو زدم تو لیست ویو تایمرش شروع به حرکت کنه
لطفا اگه می تونید کمکم کنید
سلام ،
شما ننوشتین که در پیاده سازی تایمر مشکل دارین یا دسترسی به عناصر GridView ،
به هر حال در خصوص دسترسی به GridView از این روش استفاده کنین :
شماره 0 همون ایندکسه هستش که میتونی تغیرش بدی ، شماره 3 هم طبق DataGrid شما ایندکس ستون Timer هستش
data_car_list.SelectedRows[0].Cells[3].Value = "abcd";
آخرین ویرایش به وسیله ShayanFiroozi : یک شنبه 25 اسفند 1398 در 21:22 عصر
ببخشید
من می خواهم تایمر رو تو لیست ویو (listview) نمایش بده نه تو دیتا گرید ویو (data grid view)
بعدش هم این روش مقدار ثابتی تو دیتا گرید ویو نشون می ده من می خواهم تایمر شروع به حرکت کنه
خوب اگر شما تایمر رو پیاده سازی کردین که راحته ، به ازای هر رکورد یا شخص یه شی تایمر به صورت داینامیک ایجاد کنین و راه اندازیش کنین
برای دسترسی به لیست ویوو هم از این کد نمونه استفاده کنین :
if(listView1.SelectedItems != null)
{
ListViewItem item = listView1.SelectedItems[0];
item.SubItems[3].Text = "yourTimerTextHere";
}
1
2
3
4
5
6 if(listView1.SelectedItems != null)
{
ListViewItem item = listView1.SelectedItems[0];
item.SubItems[3].Text = "yourTimerTextHere";
}
تو این کدی که نوشتید باید حتما یک ردیف رو انتخاب کرد اما من نمی خوام یک ردیفو انتخاب کنم
وقتی که دکمه شروع رو زدم textbox1.text و textbox2.text و textbox3.text و تایمر به لیست ویو اضافه می شوند ولی تایمر ایستاده حرکت نمی کنه
در خصوص ایندکس شما میتونین از آخرین ایندکس استفاده کنین (در واقع آخرین ایندکس همیشه همون شماره ایه که شما همین الان اضافه کردین).
در خصوص تایمر ، خوب مشخصه که خود به خود حرکت نمیکنه ! یکی باید اونو آپدیت کنه ، شما بهتره سورس کاملتون رو بذارین تا ببینیم از چه روشی دارین پیش میرین
سلام
این هم از سورس کد :
qu0.png
من فقط میخوام تایمره تو لیست ویو شروع به حرکت کنه
خوب شما دارین Label4 رو مدام آپدیت میکنین ،
حالا مقدار Label4.Text رو میدیم به آخرین آیتم لیست ویوو ،ولی بازم به مشکل بر میخورین ، چون این کد آخرین آیتم اضافه شده رو آپدیت میکنه ،
listView1.Items
[listView1.Items.Count - 1].SubItems[3].Text = Label4.Text;
شما بفرمایید هدف این نرم افزار چیه ، احساس میکنم از روش بهتری میشه استفاده کرد. مگر اینکه فقط 1 نفر و یک تایمر داشته باشین !
تو این برنامه نام و نام خانوادگی و دریافتی رو دریافت کنه و بعدش تو یک لیست ویو همراه با یک تایمر که امکان توقف و ریست و ادامه داشته باشه نمایش دهد
یک تغییری تو فرم و سورس کد این پروژه دادم
frmtimer.png
این هم سورس کد
sorcecode.jpg
خروجی تایمر رو تو لیست ویو گذاشتم
اگه روش بهتری دارید لطفا بفرمایید که من چه کار کنم تا این پروژه کامل بشه
ممنون
اگر یه پروژه تست هستش و یک نفر قراره براش تایمر اجرا بشه مشکلی نداره ، اما اگر هدف نرم افزاری هست که بخواین به مشتری بدین باید از اول نوشته بشه ، بستگی به این داره که از این تایمر میخواد چه استفاده ای بشه
تایمر تو این پروژه قراره تو پروژه مدیریت گیم نت استفاده بشه
وقت هر مشتری برای استفاده از سیستم محاسبه بشه
خوب پس با این کد و طراحی شما فقط یک مشتری میتونین داشته باشین !
چه جوری میشه که چند تا مشتری داشته باشم
اگه نمونه کد دارید بفرستید
آخرین ویرایش به وسیله acashkanmh : سه شنبه 27 اسفند 1398 در 20:24 عصر
این دیگه میشه یه پروژه !!
چگونه میشه تایمر رو برای چند نفر محاسبه کرد من فقط مشکلم با اون تایمر هستش بعدش برای آپدیت کردن لیست ویو چه باید چه کاری انجام داد
بقیه پروژه هم خودم درست می کنم
راه های زیادی هست ، استفاده از لیست ها ، آرایه ها
ولی شما چون تایمر ها همشون زمان تیکشون یکی هست میتونی با یه دونه تایمر برنامه نویسی کنی ولی توی اون تایمر باید مدیریت کنی کدوم مشتری استارت خورده ، کدوم Pause شده و کدوم Stop شده
لطفا میشه بیشتر توضیح بدهید تا منطورتون رو بفهمم یا یک نمونه کد برای تایمر
ممنون
متشکرم واسه نمونه کدی که دادید
تو این تصویر $ رو خطا می گیره
qu1.png
برای رفع این ارور چه کار کنم؟؟؟
دو تا راه حل دارید :
یا نسخه ویژوال استدیو تون رو ارتقاء بدید تا #C نسخه 6 رو ساپورت کنه و قابلیت interpolated string (همون رشته هایی که با "$ شروع میشوند) رو داشته باشه.
$"{time.Hours:00}:{time.Minutes:00}:{ time.Seconds:00}"
یا اون interpolated string رو با نمونه معادل اش بدون استفاده از این قابلیت مثلا با کمک string.Format جایگزین کنید :
string.Format("{0:00}:{1:00}:{2:00}", time.Hours, time.Minutes, time.Seconds)
ممنون از کمک شما