توسيط الكلام في الخلية في StringGrid
#1
السلام عليكــم ورحمـة الله وبركاتــة
أخوتي الأكارم
كيف يمكن توسيط الكلام في الخلية في StringGrid
طبعاً ليس في كل خلايا الـ StringGrid ولكن السطر الأول فقط
أو كيفية استخدام Align للخلايا في StringGrid
الرد
#2
لا أضن أخي الكريم أن المكون StringGrid يتوفر على هده الخاصية يمكن برجمة مكون مشتق منه وأضف له الخاصية التي تمكنك من دلك
يمكنك ان تستعين بدرس حول المكونات و هو مطروح في الدورة من قبل المشرفين جزاهم الله خيرا
الرد
#3
انظر لهذا المقال فهو رائع

كود :
http://www.swissdelphicenter.ch/en/showcode.php?id=1596 http://www.festra.com/wwwboard/messages/13369.html

لا أدري إن كان هذا مخالف أم لا ولكن هنا ستجد مقال يحل لك الإشكال
Rolleyes
الرد
#4
السلام عليكــم ورحمـة الله وبركاتــة
الأخوة الأكارم
شكراً لكم على المشاركة
الأخ me&delphi: هل بامكانك وضع كود البرمجة.

الأخ tempuser: ممكن تشرح لي الكود الذي تفضلت بذكره وهو على العنوان http://www.swissdelphicenter.ch/en/showcode.php?id=1596
لم أستطع في هذا الكود أن أجعل الخط أفقي فالغاية من الكود جعل النص في الخلية بشكل عمودي
وأنا **** فقط استخدام خاصية Align للخلية (يمين - وسط -يسار)
مع جزيل الشكر
الرد
#5
الاخ Mouhmadamer
الهدف من الكود المذكور في الوصلة هو فتح أفق جديد لك لكي ترى مدى الامكانيات التي يمكنك عمله بالتعامل مع الكانفاس حيث يمكنك بشكل برمجي من فعل ماتريد وعليك التجربة في الأكواد بعد دراستها
الرد
#6
PHP كود :
procedure TForm1.StringGrid1DrawCell(Sender: TObject; ACol, ARow: Integer;
  
Rect: TRect; State: TGridDrawState);
var 
s: string;
    
drawrect :trect;
begin
  s
:= (sender as tstringgrid).Cells[ acol, arow ];
  if 
length(s) > 0 then
  begin
    drawrect 
:= rect;
    
drawtext((sender as tstringgrid).canvas.handle,pchar(s), length(s), drawrect,dt_wordbreak or DT_CENTER or dt_noprefix );
    if (
drawrect.bottom - drawrect.top) >(sender as tstringgrid).rowheights[arow] then
    begin
      
(sender as tstringgrid).rowheights[arow] := (drawrect.bottom - drawrect.top)
    
end
    
else
    
begin
      drawrect
.Right := rect.Right;
      (
sender as tstringgrid).canvas.fillrect( drawrect );
      
drawtext((sender as tstringgrid).canvas.handle,pchar(s), length(s), drawrect,dt_wordbreak or DT_CENTER or dt_noprefix);
    
end;
  
end;
end; 

منقول للفائدة
الرد


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


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