delphi4arab منتديات دلفي للعرب
الانتقال إلى الحقل التالي في dbgrid - نسخة قابلة للطباعة

+- delphi4arab منتديات دلفي للعرب (https://delphi4arab.net/forum)
+-- قسم : منتديات دلفي للعرب التعليمية (https://delphi4arab.net/forum/forumdisplay.php?fid=3)
+--- قسم : سؤال و جواب حول دلفي (https://delphi4arab.net/forum/forumdisplay.php?fid=15)
+--- الموضوع : الانتقال إلى الحقل التالي في dbgrid (/showthread.php?tid=4085)



الانتقال إلى الحقل التالي في dbgrid - هاوي دلفي - 09-04-2012

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


الانتقال إلى الحقل التالي في dbgrid - أبو معاذ - 09-04-2012

[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]


الانتقال إلى الحقل التالي في dbgrid - هاوي دلفي - 09-04-2012

السلام عليكم
أشكرك على الرد على الشق الأول
وإذا كان بالإمكان الشق الثاني وهو:
كيفية تحديد سطر (سجل) من عنصر dbgrid عند الضغط بالماوس على طرف السطر ومن ثم إجراء عملية نسخ عليه ثم إجراء عملية لصق على السجل الجديد


الانتقال إلى الحقل التالي في dbgrid - أبو معاذ - 09-04-2012

[INDENT]
هاوي دلفي كتب :وإذا كان بالإمكان الشق الثاني
وعليكم السلام ورحمة الله وبركاته،
لم أفهم السؤال جيدا لكن سأحوال :

أنظر خاصية SelectedField الخاصة ب DbGrid
مثال :
كود :
if DBgrid1.SelectedField.DisplayName = 'MyName' then
أو للانتقال إلى خانة معينة ، أنظر إلى الخاصية SelectedIndex
مثال
كود :
DBgrid1.SelectedIndex := 0;
للنتقال إلى أول خانة من السطر
ممكن توضح أكثر؟
وفقك الله لكل خير.
[/INDENT]


الانتقال إلى الحقل التالي في dbgrid - kachwahed - 09-04-2012

وعليكم السلام ورحمة الله وبركاته
منقول:
كود :
//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;
بالتوفيق.



الانتقال إلى الحقل التالي في dbgrid - هاوي دلفي - 12-04-2012

السلام عليكم
توضيح: لو اعتبرنا اتجاه dbgrid من اليمين إلى اليسار عند الضغط بواسطة الماوس على الطرف الأيمن لسطر أن يتم تحديده كي أقوم بإجراء عملية نسخ له ومن ثم الانتقال إلى بداية سطر جديد لأقوم بعملية لصق
سوال إضافي إذا ممكن على DBGRID
عند ضغط السهم الأسفل والمؤشر على السطر الأخير يتم فتح سطر جديد فارغ وعند ضغط السهم الأعلى يتم حذف هذا السطر والسؤال كيف يمكن إضافة بعض القيم لحقل عند ضغط السهم الأسفل
ولكم جزيل الشكر