امتیاز موضوع:
  • 0 رأی - میانگین امتیازات: 0
  • 1
  • 2
  • 3
  • 4
  • 5
قراردادن يك مقدار درون ديتا گريد
نویسنده پیام
m_vb66 آفلاین
در حال پیشرفت
***

ارسال‌ها: 253
موضوع‌ها: 60
تاریخ عضویت: فروردین ۱۳۸۷

تشکرها : 114
( 52 تشکر در 35 ارسال )
ارسال: #1
قراردادن يك مقدار درون ديتا گريد
ايا گريدهاي خود vb اين امكان رو دارن كه بشه درونشون يك رشته اضافه كرد
مثلا يك ركورد ست رو به يك ديتا گريد بدي و بعدش يك رشته رو تو خونه جديدي از گريد اضافه كني؟ ميدونم كه ميشه يك ستون جديد با اين شرايط ايجاد كرد اما نميدونم چجوري ميشه مقدارم رو بهش بدم
۰۴-اسفند-۱۳۸۷, ۱۰:۵۹:۲۰
ارسال‌ها
پاسخ
Rink8 آفلاین
كاربر دو ستاره
**

ارسال‌ها: 224
موضوع‌ها: 49
تاریخ عضویت: اردیبهشت ۱۳۸۷

تشکرها : 302
( 481 تشکر در 112 ارسال )
ارسال: #2
RE: قراردادن يك مقدار درون ديتا گريد
با سلام
خاصیت AllowAddNew این کنترل باید از نوع True باشد که بتوانید این کار را انجام بدهید.

موفق باشید.
۰۴-اسفند-۱۳۸۷, ۲۱:۲۸:۲۵
وب سایت ارسال‌ها
پاسخ
mojtabamalaekeh آفلاین
کاربر با تجربه
****

ارسال‌ها: 566
موضوع‌ها: 104
تاریخ عضویت: آذر ۱۳۸۶

تشکرها : 1378
( 631 تشکر در 223 ارسال )
ارسال: #3
RE: قراردادن يك مقدار درون ديتا گريد
سؤالت زیاد واضح نیست (یعنی من درست متوجه نمیشم)
اما اگه میخوای یه ستون به DataGrid اضافه کنی امکانش هست.
کد:
DataGrid1.Columns.Add DataGrid1.Columns.Count
ولی چون این ستون جزو فیلدهای جدولت نیست ـ تا زمانی که DataGrid به یک Table متصل باشه ـ نمیشه بهش مقدار بدی.


۰۶-اسفند-۱۳۸۷, ۰۸:۲۱:۲۵
ارسال‌ها
پاسخ
m_vb66 آفلاین
در حال پیشرفت
***

ارسال‌ها: 253
موضوع‌ها: 60
تاریخ عضویت: فروردین ۱۳۸۷

تشکرها : 114
( 52 تشکر در 35 ارسال )
ارسال: #4
RE: قراردادن يك مقدار درون ديتا گريد
پس چجوري بايد بهش مقدار داد
۰۷-اسفند-۱۳۸۷, ۱۰:۱۲:۰۲
ارسال‌ها
پاسخ
mojtabamalaekeh آفلاین
کاربر با تجربه
****

ارسال‌ها: 566
موضوع‌ها: 104
تاریخ عضویت: آذر ۱۳۸۶

تشکرها : 1378
( 631 تشکر در 223 ارسال )
ارسال: #5
RE: قراردادن يك مقدار درون ديتا گريد
هر ستون از دیتاگراید نماینده یک فیلد از جدول بانک اطلاعاتی است (هر ردیف هم یک رکورد).
به نظرتون منطقیه که دیتاگراید ستونی به غیر از فیلدهای جدول رو نشون بده و بعد اطلاعاتی هم توش ذخیره کنه؟
فرض کنید یک ستون جدید اضافه کردیم و بعد خواستیم توی ردیف n ام از اون ستون اطلاعاتی وارد کنیم. دیتاگراید زبون بسته این اطلاعات رو کجا باید ذخیره کنه در حالیکه چنین فیلدی اصلا توی جدول دیتابیسمون موجود نیست؟
شما دقیقا بفرمایید چیکار میخواید بکنید شاید بشه یه کاریش کرد.


۰۹-اسفند-۱۳۸۷, ۱۰:۱۶:۴۵
ارسال‌ها
پاسخ
m_vb66 آفلاین
در حال پیشرفت
***

ارسال‌ها: 253
موضوع‌ها: 60
تاریخ عضویت: فروردین ۱۳۸۷

تشکرها : 114
( 52 تشکر در 35 ارسال )
ارسال: #6
RE: قراردادن يك مقدار درون ديتا گريد
خوب اين بستگي داره به اينكه شما ركورد ست رو چجوري بگيري اين امكان وجود داره كه شما اجازه تغيير رو تو بانك با توجه به نوع ركورد ست ايجاد شده از كاربر بگيري و يا اجازه update شدن ركورد ها رو بهش بدي
مشكل من اينه كه ميخواهم تو يك گريد مقادير select شده تيبلم رو با كمي تغيير نشون بدم مثلا تهران رو بصورت استان تهران نشون بدم و يا مقادير پولي رو به يك فانكشن ارسال كنم و نتيجه رو تو گريد نشون بدم و يا تاريخ ميلادي موجود در بانك رو بصورت شمسي نشون بدم
اين رو هم بگم كه نميخواهم به بانك چيزي اضافه يا كم كنم فقط ميخواهم نمايش فيلد هام رو با كمكي تغيير در اونها نشون بدم
۱۰-اسفند-۱۳۸۷, ۰۹:۴۳:۴۳
ارسال‌ها
پاسخ
mojtabamalaekeh آفلاین
کاربر با تجربه
****

ارسال‌ها: 566
موضوع‌ها: 104
تاریخ عضویت: آذر ۱۳۸۶

تشکرها : 1378
( 631 تشکر در 223 ارسال )
ارسال: #7
RE: قراردادن يك مقدار درون ديتا گريد
با استفاده از FormatString خود DateGrid میشه یه رشته به آخر مقادیر عددی اضافه کرد. احتمالا به آخر مقادیر رشته ای هم بشه ولی من بلد نیستم. اما اینکه مقادیر رو به یک تابع از برنامه خودت بدی و بعد از پردازش تو گراید نشون بدی چون من هیچ راهی بلد نیستم اگه جای شما بودم، مثلا برای تاریخ این کار رو می کردم:
یک فیلد تاریخ برای ذخیره تاریخ میلادی از نوع Date/Time واقعا لازمه چون اگه بخواید رکوردهای بین دو تاریخ رو فیلتر کنی حتما باید تاریخت میلادی باشه. در کنارش یک فیلد تاریخ از نوع String هم میذارم که تاریخ شمسی توش ذخیره میشه. وقتی کاربر تاریخ شمسی رو وارد میکنه (جدا از کنترل صحیح بودن تاریخ) مقدار رو اول توی فیلد تاریخ که از نوع رشته بود میذارم بعد تبدیل به میلادی می کنم و تو فیلد تاریخ که از نوع Date/Time بود هم میریزم. این کار هم موقع ثبت رکورد جدید هم موقع ویرایش رکورد از قبل ایجاد شده انجام میشه و توی گراید هم فقط تاریخی رو که از نوع String و به صورت شمسی هست نشون میدم. (تو گرایدی که خودم شبیه سازی کردم از این روش استفاده کردم)

یه راه دیگه اینکه گراید رو به Ado وصل نکنی، خودت با حلقه For رکوردها بخونی بعد با فرمت دلخواه وارد گراید کنی. نمی دونم شاید اگه رکوردهات چندهزارتا باشن سرعت پایین بیاد. برا ویرایش هم که مشکل خاصی نیست هر ردیفی از گراید تغییر کرد اول با MoveFirst میری رو اولین رکورد بعد با Move میری به رکوردی که برابر شماره ی ردیفِ ویرایش شده تو گراید هست بعد Edit میکنی و مقادیر رو با فرمت دلخواه ثبت میکنی. (قبلا از این روش استفاده کردم و کاملا هم راضی بودم اما الان نمونه ندارم)

من بجای استفاده از DataGrid خودم یه گراید شبیه سازی کردم که کنترل همه چیزش دست خودمه. ولی چون بصورت کمپوننت درش نیاوردم ممکنه بدرد شما نخوره. (باید برات جالب باشه)
دانلود کن رمزش رو PM میکنم. برای دوستان ایرانویجی هم اگه کسی خواست رمزش رو PM می کنم چون نمی خوام هرکی ثبت نام کرد فوری بیاد دانلودش کنه.

نقل قول: نميخواهم به بانك چيزي اضافه يا كم كنم
سخت نگیر... اگه منطقا چیزی باید اضافه بشه خوب اضافه کن دیگه...


فایل‌(های) پیوست شده
.rar   Test MyRows.rar (اندازه: 180.48 KB / تعداد دفعات دریافت: 183)


۱۱-اسفند-۱۳۸۷, ۰۹:۰۲:۳۲
ارسال‌ها
پاسخ
تشکر شده توسط : m_vb66
m_vb66 آفلاین
در حال پیشرفت
***

ارسال‌ها: 253
موضوع‌ها: 60
تاریخ عضویت: فروردین ۱۳۸۷

تشکرها : 114
( 52 تشکر در 35 ارسال )
ارسال: #8
RE: قراردادن يك مقدار درون ديتا گريد
نه واقعا اجازه تغيير در بانك و يا ساختار بانك رو ندارم به همين خاطر ميخواهم تو مقدارهاي موجود در گريد تغيير بدم
مخصوصا اون قسمت تاريخ
۱۱-اسفند-۱۳۸۷, ۱۰:۲۳:۵۲
ارسال‌ها
پاسخ
mojtabamalaekeh آفلاین
کاربر با تجربه
****

ارسال‌ها: 566
موضوع‌ها: 104
تاریخ عضویت: آذر ۱۳۸۶

تشکرها : 1378
( 631 تشکر در 223 ارسال )
ارسال: #9
RE: قراردادن يك مقدار درون ديتا گريد
من سه تا گراید رو امتحان کردم.
DataGrid حتما باید به یک Table متصل باشه
FlexGrid و HFlexGrid هم نمیشه تو خونه هاشون با کیبورد تایپ کرد (اطلاعات وارد کرد)

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

پیشنهاد می کنم برای نمایش اطلاعات به صورت جدول، از همون روشی که توی برنامه نمونه گذاشتم استفاده کن. تعداد رکوردها هم هیچ تأثیری توی سرعت برنامه نداره.

فقط یه مقدار کد برنامه و یه مقدار ظاهر فرم باید متناسب با فیلدهای شما تغییر کنه که اگه تصمیم گرفتی از روش من استفاده کنی و لیست فیلدها رو در اختیارم بذاری حاضرم خودم این تغییرات رو برات انجام بدم. کار ساده ای هست. همونطور که میدونی تو برنامه نمونه سه تا فرم بود. درست کردن فرم اول زحمت داشت ولی برای دو تا فرم دیگه از اولی کپی گرفتم و یکم تغییرات دادم.

تصمیم با شماست. از بقیه اعضا هم تقاضا می کنم پست شماره 6 رو که سؤال بطور کامل مطرح شده بخونند شاید راه بهتری پیشنهاد کنند.


۱۴-اسفند-۱۳۸۷, ۰۸:۵۶:۳۵
ارسال‌ها
پاسخ
m_vb66 آفلاین
در حال پیشرفت
***

ارسال‌ها: 253
موضوع‌ها: 60
تاریخ عضویت: فروردین ۱۳۸۷

تشکرها : 114
( 52 تشکر در 35 ارسال )
ارسال: #10
RE: قراردادن يك مقدار درون ديتا گريد
البته با vsflex8.ocx كه از گريدهاي خود بيسيك نيست ميشه اين كار رو كرد ولي با اون نميخواهم كار كنم يعني ميشه بدون اتصال به بانك مقادير داخلش گذاشت گريد بسيار كاملي هم هست ولي ميخواستم با گريد هاي خود vb باشه
۱۴-اسفند-۱۳۸۷, ۱۰:۰۴:۱۲
ارسال‌ها
پاسخ
تشکر شده توسط : mojtabamalaekeh
mojtabamalaekeh آفلاین
کاربر با تجربه
****

ارسال‌ها: 566
موضوع‌ها: 104
تاریخ عضویت: آذر ۱۳۸۶

تشکرها : 1378
( 631 تشکر در 223 ارسال )
ارسال: #11
RE: قراردادن يك مقدار درون ديتا گريد
اینی که میگی RightToLeft داره؟
اگه کارت رو راه میندازه پس چرا میگی نمیخوای؟ (دانلود کردم یه نگا بش بندازم)
آخرش تصمیم نگرفتی چیکار میخوای بکنی؟
کسی غیر از من هم که اینجا نمیاد یه جوابی بده!!!
امیدوارم هرچه زودتر به نتیجه برسی...
چیز خوبی بود چون هم RightToLeft داشت هم قابل ویرایش بود (یعنی میشد داخلش تایپ کرد)
ای کاش زودتر با این کنترل آشنا میشدم. یه تشکر هم به شما بدهکار شدم.
دیگه چی میخوای؟ از همین استفاده کن.


(آخرین ویرایش در این ارسال: ۱۵-اسفند-۱۳۸۷, ۰۷:۲۷:۵۶، توسط mojtabamalaekeh.)
۱۵-اسفند-۱۳۸۷, ۰۷:۲۲:۱۱
ارسال‌ها
پاسخ


موضوعات مرتبط با این موضوع...
موضوع نویسنده پاسخ بازدید آخرین ارسال
  [سوال] خطای 1004 در فراخوانی مقدار روی شیت با نشانی جدول eppagh 0 3,758 ۰۷-خرداد-۱۳۹۵, ۱۸:۰۵:۱۴
آخرین ارسال: eppagh
  [سوال] کنترل مقدار نوع داده که از تکس باکس فرم دریافت می شود eppagh 2 3,307 ۰۲-مرداد-۱۳۹۴, ۱۰:۵۴:۰۰
آخرین ارسال: Ghoghnus
  [سوال] مشکل جابجا کردن مقدار متغیر از ThisWorkbook به Worksheet_Change در اکسل eppagh 0 2,200 ۰۸-اسفند-۱۳۹۳, ۲۱:۴۷:۵۴
آخرین ارسال: eppagh
  [سوال] به دست آوردن ماکسیمم یا مینیمم مقدار یک رنج اکسل eppagh 3 4,164 ۰۹-دى-۱۳۹۳, ۱۵:۳۲:۳۷
آخرین ارسال: eppagh
  [سوال] تغییر مقدار ComboBox با تایمر محمدعلي 1 2,327 ۲۷-مرداد-۱۳۹۳, ۱۱:۵۱:۳۵
آخرین ارسال: Vb6Moderator
  جستجو مقدار مورد نظر در Cellهای رنج تعریف شده و دریافت نشانی Cellهای آن eppagh 9 6,594 ۱۲-مرداد-۱۳۹۳, ۰۹:۵۴:۰۳
آخرین ارسال: eppagh
  مقدار دهی توسط WebBrowser aleas 1 2,423 ۰۳-اردیبهشت-۱۳۹۳, ۱۴:۳۴:۱۶
آخرین ارسال: babyy
  نمايش ركوردهاي يك فيلد از ديتا بيس اكسس در يك ليست باكس sinacomputer 8 11,391 ۱۹-بهمن-۱۳۹۲, ۲۱:۲۴:۱۰
آخرین ارسال: Ghoghnus
  [سوال] کم کردن یه مقدار از فیلد جدول arezoobandar 8 7,580 ۱۴-دى-۱۳۹۱, ۱۴:۰۲:۱۶
آخرین ارسال: mehdibahram
  حذف شدن دستورات درون سورس wave2 5 4,708 ۲۳-مرداد-۱۳۹۱, ۰۲:۴۶:۱۱
آخرین ارسال: Payman62

پرش به انجمن:


کاربرانِ درحال بازدید از این موضوع: 3 مهمان

صفحه‌ی تماس | IranVig | بازگشت به بالا | | بایگانی | پیوند سایتی RSS