PDA

View Full Version : سوال: درج اتوماتیک یک رکورد در grid بدون تغییر focus !؟



بمب منطقی
چهارشنبه 13 اردیبهشت 1391, 12:50 عصر
با سلام:

از اینکه title تاپیک نامفهمومه معذرت میخوام و بجای درج باید می نوشتم update.جریان از این قراره که در grid وقتی تعدادی رکورد fetch شدن و focus بر روی رکوردی از جدول قرار داری و فیلدی رو تغییر میدی (فیلد حالا از هرنوعی باشه:combobox،checkbox,textbox,...) تا focus رو بر روی سطر بعدی نبری تغییرات انجام شده در Grid در جدول مربوطش در بانک update اتوماتیک نمیشه.چطور میشه این آپدیت اتوماتیک grid را با زدن دکمه اینتر در فیلدهای از نوع textbox و کلیک ماوس در فیلدهای از نوع textbox یا combo باکس و یا امثالهم بدون focus بر روی رکورد دیگه در grid انجام داد؟ البته من از grid کامپاننت devexpress استفاده میکنم.

با تشکر فراوان از اساتید محترم سایت.

Mahmood_M
چهارشنبه 13 اردیبهشت 1391, 15:23 عصر
اگر درست فهمیده باشم ، می تونید در رویداد OnKeyPress مربوط به Grid مقدار کلید فشرده شده رو بررسی کنید ، اگر کلید Enter بود و اگر Table در وضعیت Edit ( یا Insert ) بود ، Table رو Post کنید ، مثال :

if Key = #13 then
begin
if (ADOTable1.State = dsEdit) or (ADOTable1.State = dsInsert) then
ADOTable1.Post;
end;

موفق باشید ...

بمب منطقی
چهارشنبه 13 اردیبهشت 1391, 15:52 عصر
از جوابتون ممنونم.با راهنمایی شما توی رویداد EditValueChanged نوشتمش خودشم به این صورت و حل شد :

if (dataset1.State = dsEdit) or (dataset1.State = dsInsert) then
dataset1.Post

یه مشکل بزرگ رو برام حل کردین.حیف که نمیشه دکمه تشکر رو هزار بار زد! خدا مشکلاتتون رو حل کنه