E
Endo
Unregistered / Unconfirmed
GUEST, unregistred user!
使用DirectX 画图时发现这样的一个题:无法画图元
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, DXSprite, DXClass, DXInput, DXDraws, ExtCtrls;
type
TMainForm = class(TDXForm)
DXDraw: TDXDraw;
procedure FormCreate(Sender: TObject);
procedure DXDrawMouseMove(Sender: TObject; Shift: TShiftState; X,
Y: Integer);
procedure FormKeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
private
public
end;
var
MainForm: TMainForm;
implementation
{$R *.dfm}
procedure TMainForm.FormCreate(Sender: TObject);
begin
DXDraw.UpdatePalette;
end;
procedure TMainForm.DXDrawMouseMove(Sender: TObject; Shift: TShiftState; X,
Y: Integer);
begin
DXDraw.Surface.Fill(0);
with DXDraw.Surface.Canvas do
begin
with DXDraw.Surface.Canvas do
begin
brush.style:=bsclear;
pen.style:=psclear;
pen.color:=clwhite;
Font.Color:=clWhite;
Font.Size:=10;
textout(10,10,'Press ESC to Quit'); //会画出来
textout(100,100,'X: '+IntToStr(X)+'Y: '+IntToStr(Y));//会画出来
DXDraw.Surface.Canvas.Rectangle(200,200,x,y);//没画出来
//我试着画其他图形都不行 请问怎么解决啊???
Release;
DXDraw.Flip;
end;
end;
end;
end;
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, DXSprite, DXClass, DXInput, DXDraws, ExtCtrls;
type
TMainForm = class(TDXForm)
DXDraw: TDXDraw;
procedure FormCreate(Sender: TObject);
procedure DXDrawMouseMove(Sender: TObject; Shift: TShiftState; X,
Y: Integer);
procedure FormKeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
private
public
end;
var
MainForm: TMainForm;
implementation
{$R *.dfm}
procedure TMainForm.FormCreate(Sender: TObject);
begin
DXDraw.UpdatePalette;
end;
procedure TMainForm.DXDrawMouseMove(Sender: TObject; Shift: TShiftState; X,
Y: Integer);
begin
DXDraw.Surface.Fill(0);
with DXDraw.Surface.Canvas do
begin
with DXDraw.Surface.Canvas do
begin
brush.style:=bsclear;
pen.style:=psclear;
pen.color:=clwhite;
Font.Color:=clWhite;
Font.Size:=10;
textout(10,10,'Press ESC to Quit'); //会画出来
textout(100,100,'X: '+IntToStr(X)+'Y: '+IntToStr(Y));//会画出来
DXDraw.Surface.Canvas.Rectangle(200,200,x,y);//没画出来
//我试着画其他图形都不行 请问怎么解决啊???
Release;
DXDraw.Flip;
end;
end;
end;
end;