الانتقال إلى الحقل التالي في dbgrid
#1
السلام عليكم
عند إدخال قيمة في خلية من عنصر dbgrid أود الانتقال إلى الخلية التالية في الحقل التالي عند ضغط مفتاح enter وليس مفتاح Tab
كيفية تحديد سطر (سجل) من عنصر dbgrid عند الضغط بالماوس على طرف السطر ومن ثم إجراء عملية نسخ عليه ثم إجراء عملية لصق على السجل الجديد
ولكم الشكر
الرد
#2
[INDENT]
وعليكم السلام ورحمة الله وبركاته ،

كود :
procedure TForm1.DBGrid1KeyDown(Sender: TObject; var Key: Word; Shift: TShiftState); begin if key = VK_RETURN then if DBGrid1.SelectedIndex < DBGrid1.Columns.Count - 1 then DBGrid1.SelectedIndex := DBGrid1.SelectedIndex + 1; end;
[/INDENT]
اللهم اجعلني من أهل القرآن ، الذين هم أهلك و خاصتك.
تذكر بأن الوقت الذي تلهو فيه ، غيرك يبني مجده فيه.
الرد
#3
السلام عليكم
أشكرك على الرد على الشق الأول
وإذا كان بالإمكان الشق الثاني وهو:
كيفية تحديد سطر (سجل) من عنصر dbgrid عند الضغط بالماوس على طرف السطر ومن ثم إجراء عملية نسخ عليه ثم إجراء عملية لصق على السجل الجديد
الرد
#4
[INDENT]
هاوي دلفي كتب :وإذا كان بالإمكان الشق الثاني
وعليكم السلام ورحمة الله وبركاته،
لم أفهم السؤال جيدا لكن سأحوال :

أنظر خاصية SelectedField الخاصة ب DbGrid
مثال :
كود :
if DBgrid1.SelectedField.DisplayName = 'MyName' then
أو للانتقال إلى خانة معينة ، أنظر إلى الخاصية SelectedIndex
مثال
كود :
DBgrid1.SelectedIndex := 0; للنتقال إلى أول خانة من السطر
ممكن توضح أكثر؟
وفقك الله لكل خير.
[/INDENT]
اللهم اجعلني من أهل القرآن ، الذين هم أهلك و خاصتك.
تذكر بأن الوقت الذي تلهو فيه ، غيرك يبني مجده فيه.
الرد
#5
وعليكم السلام ورحمة الله وبركاته
منقول:
كود :
//Oleg Zavgorodnij procedure TForm1.FormCreate(Sender: TObject); begin KeyPreview := True; end; procedure TForm1.FormKeyPress(Sender: TObject; var Key: Char); begin if Key = #13 then if not (ActiveControl is TDBGrid) then begin Key := #0; Perform(WM_NEXTDLGCTL, 0, 0); end else if (ActiveControl is TDBGrid) then with TDBGrid(ActiveControl) do if SelectedIndex < (fieldcount -1) then SelectedIndex := SelectedIndex +1 else SelectedIndex := 0; end;
بالتوفيق.
اللهم احقن دماء المسلمين، لا تنسوهم بالدعاء...
الرد
#6
السلام عليكم
توضيح: لو اعتبرنا اتجاه dbgrid من اليمين إلى اليسار عند الضغط بواسطة الماوس على الطرف الأيمن لسطر أن يتم تحديده كي أقوم بإجراء عملية نسخ له ومن ثم الانتقال إلى بداية سطر جديد لأقوم بعملية لصق
سوال إضافي إذا ممكن على DBGRID
عند ضغط السهم الأسفل والمؤشر على السطر الأخير يتم فتح سطر جديد فارغ وعند ضغط السهم الأعلى يتم حذف هذا السطر والسؤال كيف يمكن إضافة بعض القيم لحقل عند ضغط السهم الأسفل
ولكم جزيل الشكر
الرد


التنقل السريع :


يقوم بقرائة الموضوع: بالاضافة الى ( 1 ) ضيف كريم