21-07-2010, 03:04 PM
وعليكم السلام ورحمة الله وبركاته
جيد أنك وضحت السؤال
شيء مثل هذا:
لكن...
الرسم في مثل هذه المكونات يتم باستخدام حدث مخصص لذلك
في المكون TComboBox هنا حدث يدعى OnDrawItem يستخدم لتخصيص شكل معين للـ Combo
بعد ضبط خاصية Style على csOwnerDrawVariable لتعلن أنك أنت من سيقوم بالرسم في المكون
اكتب في الحدث OnDrawItem للـ TComboBox:
حيث Image1 هي صورة محضرة مسبقا
أو استبدل السطر:
بالسطر:
لاستخدام صورة من جهازك.
المرة القادمة إطرح سؤال في موضوع مستقل لأنه غير مشابه لهذا
بالتوفيق.
جيد أنك وضحت السؤال

شيء مثل هذا:
كود :
ComboBox1.Brush.Bitmap := Image1.Picture.Bitmap;الرسم في مثل هذه المكونات يتم باستخدام حدث مخصص لذلك
في المكون TComboBox هنا حدث يدعى OnDrawItem يستخدم لتخصيص شكل معين للـ Combo
بعد ضبط خاصية Style على csOwnerDrawVariable لتعلن أنك أنت من سيقوم بالرسم في المكون
اكتب في الحدث OnDrawItem للـ TComboBox:
PHP كود :
procedure TForm1.ComboBox1DrawItem(Control: TWinControl; Index: Integer;
Rect: TRect; State: TOwnerDrawState);
var
Bitmap: TBitmap;
Offset: Integer;
begin
offset := 0;
with ComboBox1.Canvas do
begin
FillRect(Rect);
Bitmap := TBitmap(Image1.Picture.Bitmap);
if Bitmap <> nil then
begin
//copy bitmap to combobox coordinate
BrushCopy(Bounds(Rect.Left + 2, Rect.Top + 2, Bitmap.Width,
Bitmap.Height), Bitmap, Bounds(0, 0, Bitmap.Width,
Bitmap.Height), clred);
Offset := Bitmap.Width + 8;
end;
//Set a caption to each item
TextOut(Rect.Left + Offset, Rect.Top, Combobox1.Items[Index]);
end;
end;
أو استبدل السطر:
كود :
Bitmap := TBitmap(Image1.Picture.Bitmap);PHP كود :
Bitmap.LoadFromFile('c:\YourImage.bmp');
المرة القادمة إطرح سؤال في موضوع مستقل لأنه غير مشابه لهذا

بالتوفيق.

