PDA

View Full Version : سوال: استفاده از enter در dbgrid



arefih
یک شنبه 29 دی 1387, 23:31 عصر
سلام دوستان . چگونه میتوان با استفاده از enter در dbgrid از یک ستون به ستون بعدی رفت لطفا راهنمائی فرمائید.:گریه:

bmanfy
دوشنبه 30 دی 1387, 09:23 صبح
متدی برای این کار هست البته دقیق بادم نیست .



DbGrid1.Select..... := اندیس فیلد مورد نظر ;

البته دقیق در مورد صحت دستور مطمئن نیستم . اما طبق اون چیزهایی که قبلا انجام دادم یادمه همچین چیزی بود .
به هر حال دنبای متدی بگرد که اولش Select باشه .
شاید هم Select...... درون یک متد دیگه باشه .... :متفکر: البته بعید مدونم .
البته ممکن بعضی از دوستان بگن اگه جواب میدی یا درست بده یا نده .
اما دلیل من این بود که دیدیم کسی جواب نداده . گفتم همین رو بگم شاید به دردتون خورد .
موفق باشی .

mafazel
دوشنبه 30 دی 1387, 10:10 صبح
اولا که حس کمک کردن bmanfy ارزشمنده ...
در ثانی دستور مستقیم نداره، شاید کلک زیر کارتون رو راه بندازه:
توی OnKeyPress این دستور رو بنویسید:


if Key=#13 then TStringGrid(DBGrid1).Col := TStringGrid(DBGrid1).Col+1;

توی StringGrid مشخصه های Col و Row سلول فوکوس شده رو نشون میدن
البته باید رسیدن به ستون آخر رو چک کنید.


if Key=#13 then if TStringGrid(DBGrid1).Col<TStringGrid(DBGrid1).ColCount-1
then TStringGrid(DBGrid1).Col := TStringGrid(DBGrid1).Col+1;

دقیقا به جای Col و ColCount کلمات Row و RowCount رو هم برای رفتن به سطر بعد (رکورد بعد) استفاده کنید.

arefih
دوشنبه 30 دی 1387, 15:51 عصر
خیلی خیلی ممنون از لطف جنابعالی کارم راه افتاد .جواب داد عالی بود.

arefih
دوشنبه 30 دی 1387, 15:54 عصر
اولا که حس کمک کردن bmanfy ارزشمنده ...
در ثانی دستور مستقیم نداره، شاید کلک زیر کارتون رو راه بندازه:
توی OnKeyPress این دستور رو بنویسید:


if Key=#13 then TStringGrid(DBGrid1).Col := TStringGrid(DBGrid1).Col+1;

توی StringGrid مشخصه های Col و Row سلول فوکوس شده رو نشون میدن
البته باید رسیدن به ستون آخر رو چک کنید.


if Key=#13 then if TStringGrid(DBGrid1).Col<TStringGrid(DBGrid1).ColCount-1
then TStringGrid(DBGrid1).Col := TStringGrid(DBGrid1).Col+1;

دقیقا به جای Col و ColCount کلمات Row و RowCount رو هم برای رفتن به سطر بعد (رکورد بعد) استفاده کنید.
خیلی خیلی ممنون از جواب تون جالب بود کارم راه افتاد

arefih
دوشنبه 30 دی 1387, 15:55 عصر
اولا که حس کمک کردن bmanfy ارزشمنده ...
در ثانی دستور مستقیم نداره، شاید کلک زیر کارتون رو راه بندازه:
توی OnKeyPress این دستور رو بنویسید:


if Key=#13 then TStringGrid(DBGrid1).Col := TStringGrid(DBGrid1).Col+1;

توی StringGrid مشخصه های Col و Row سلول فوکوس شده رو نشون میدن
البته باید رسیدن به ستون آخر رو چک کنید.


if Key=#13 then if TStringGrid(DBGrid1).Col<TStringGrid(DBGrid1).ColCount-1
then TStringGrid(DBGrid1).Col := TStringGrid(DBGrid1).Col+1;

دقیقا به جای Col و ColCount کلمات Row و RowCount رو هم برای رفتن به سطر بعد (رکورد بعد) استفاده کنید.
خیلی خیلی ممنون از جواب جنابعالی جالب بود

bmanfy
سه شنبه 01 بهمن 1387, 09:56 صبح
اولا که حس کمک کردن bmanfy ارزشمنده ...
در ثانی دستور مستقیم نداره، شاید کلک زیر کارتون رو راه بندازه:

ممنون .
اما من تا چیزی رو ندونم نمیگم و مطمئنم چنین چیزی برای DbGrid هست چون خودم از اون استفاده کردم .
در اولین فرصت کد دقیق رو میزارم .
فقط امتحانام تموم بشه . بعد میزارم .