![]() |
مكوّن شبكة شفّافخالد الشقروني, 26 فبراير 2001
| |
أن تكون شفافا..طفلا ، أن تكون هناك.
|
منشورة في Delphi3000.com
هذا اختبار سريع عن كيفية جعل الشبكة شفافة ، بحيث تظهر الصورة من تحتها . المثال التالي هو توليف لوحدة متكاملة ، و تتوزّع المكونات في نافذتها كالتالي:
التوليف آخر المقالة ، به إجرائيتان ، الأولى لمناولة حدث OnDrawDataCell في الشبكة ، و التي تحوي أيضا التوليف الفعلي لجعل الشبكة شفّافة . أما الإجرائية الثانية ، تتعامل مع حدث OnMouseDown الخاص بلوح Panel1 ، و التي تقوم بتحريك اللوح بحسب حركة الفأرة ، و تجعله شفافا للصورة تحته أيضا.
مثال fTransparentGrid: unit fTransparentGrid;
interface
uses
Windows, Messages, SysUtils, Classes, Graphics, Controls,
Forms, Dialogs, Db, Grids, DBGrids, ADODB, ExtCtrls;
type
TForm1 = class(TForm)
ADOTable1: TADOTable;
DataSource1: TDataSource;
Image1: TImage;
Panel1: TPanel;
DBGrid1: TDBGrid;
procedure DBGrid1DrawDataCell(Sender: TObject; const Rect: TRect;
Field: TField; State: TGridDrawState);
procedure Panel1MouseDown(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
implementation
{$R *.DFM}
procedure TForm1.DBGrid1DrawDataCell(Sender: TObject;
|
Shagrouni 2001 Khaled Shagrouni khaled@shagrouni.com