![]() |
|
اتعامل مع StringGrid و اريد التنقل - نسخة قابلة للطباعة +- delphi4arab منتديات دلفي للعرب (https://delphi4arab.net/forum) +-- قسم : منتديات دلفي للعرب التعليمية (https://delphi4arab.net/forum/forumdisplay.php?fid=3) +--- قسم : سؤال و جواب حول دلفي (https://delphi4arab.net/forum/forumdisplay.php?fid=15) +--- الموضوع : اتعامل مع StringGrid و اريد التنقل (/showthread.php?tid=11795) |
اتعامل مع StringGrid و اريد التنقل - Med-01 - 04-02-2022 السلام عليكم لدي StringGrid1 و اريد عند الضغظ على زر انتر يتم الانتقال من حقل الى اخر كلما ضغطت على انتر حليا هي تعمل لما اضغط على tab يتم الانتقال من خلية الى اخرى اريد ان تكون انتر بدلها + اذا امكن كيف اجعل StringGrid1 الاسطر غير محددة لانه حاليا ارى انه يجب كتابة كم عدد الاسطر المراد استعمالها 3=rowcount شكرا مسبقا في ميزان حسناتكم RE: اتعامل مع StringGrid و اريد التنقل - Ndagor - 04-02-2022 في OnKeyDown اضف كود كود : if (Key =13) then
Key:=VK_Tab;RE: اتعامل مع StringGrid و اريد التنقل - Med-01 - 04-02-2022 السلام عليكم اخي عملت لكن يجب ان اضغط مرتين على ENTER حتى تنتقل لانه يكون في وضع الكتابة اضغظ انتر يتم قفل الكتابة وبعدها حتى اضغط مرتا اخرى على ENTER فيقوم بالانتقال عكس TAB تقوم بقفل الكتابة وانتقال مباشرتا شكرا اخي على المساعدة في ميزان حسناتك ان شاء الله هل لديك فكرة على جمع مجموع عمود ؟ وبارك الله فيك RE: اتعامل مع StringGrid و اريد التنقل - Ndagor - 04-02-2022 حسنا انا اعمل على نسخة قديمة من دالفي و كثير من الاشياء تغيرت يمكنك تجريب الكود التالي OnKeyDown يعمل على وندوز يقوم بارسال 2 tab على التوالى كود : with StringGrid1 do
if (Key =13)and EditorMode then
begin
if(Col=(ColCount-1))and(Row=(RowCount-1)) then
RowCount:= RowCount + 1;
Perform(WM_KEYDOWN, VK_Tab,0);
Application.ProcessMessages;
Key:=VK_Tab;
end;RE: اتعامل مع StringGrid و اريد التنقل - Med-01 - 04-02-2022 شغااااااااااااااااااااااااااااااااال 100% في ميزان حسناتك يارب بقى سؤال اذ امكن لدي edit1x واريد جمع مجموع عمود رقم واحد متلا ؟ سؤال اخر خارج النطاق لماذا بقيت تستخدم النسخة القديمة من الدلفي ؟ RE: اتعامل مع StringGrid و اريد التنقل - Ndagor - 04-02-2022 ان كنت تريد حساب العمود الاول اليا مثل Excel ضع الكود التاالي في OnSelectCell فيقوم بتحديث النتيجة اليا و لكن يجب ملء الخانات بقيم صحيحة لمزيد من المعلومات ابجث عن عمل TryStrToFloat StrToFloatDef StrToFloat لتعلم الفرق بينها كود : procedure TForm5.StringGrid1SelectCell(Sender: TObject; ACol, ARow: Integer;
var CanSelect: Boolean);
var
I:integer;
Total,t:Double;
begin
Edit1.Text:= '-----';
Total:= 0.0;
with StringGrid1 do
for I := FixedRows to RowCount - 1 do
if TryStrToFloat(Cells[FixedCols+0,I],t) then
Total:= Total+t
else
Exit;
Edit1.Text:=FloatToStr(Total);
end;إقتباس :سؤال اخر خارج النطاق لماذا بقيت تستخدم النسخة القديمة من الدلفي ؟انا اعل على دلفي 2009 و لايهم انا لست محترف من حين الى اخر و البرمجة بعد 2012 اصبحت سلعة استهلاكية كغيرها من المنتجات و لا احد يرغب ان يتعلم شي يصبح تنتهي صلاحيته بعد سنوات قليلة ,,, في ذاك الوقت منتديات البرمجة كانت جد نشيطة سؤال مثل هذا كان قد تلقى عشرات الاقتراحات الحال كما اليوم على منصات التواصل الاجتماعي ,,,وهذا لا يقتصر على المنتديات العربية ,,البرمجة الان اصبحت موسوعية ,,, RE: اتعامل مع StringGrid و اريد التنقل - Med-01 - 04-02-2022 لم يشتغل الكود ؟ RE: اتعامل مع StringGrid و اريد التنقل - Ndagor - 04-02-2022 (04-02-2022, 05:29 PM)Med-01 كتب : لم يشتغل الكود ؟Cells[FixedCols+0,I] تاكد من انه العمود الصحيح غير 0 RE: اتعامل مع StringGrid و اريد التنقل - Med-01 - 04-02-2022 <p>نفش الشي لم يشتغل كنت اظن ان الامر سهل <br>شكرا لك اخي الكريم <br>معك حق اختلفت السنوات كتير لم يعد احد مهم بالبرمجة مثل السابق <br><br></p>
RE: اتعامل مع StringGrid و اريد التنقل - Ndagor - 04-02-2022 ![]() انظر الى الصورة |