怎么能让部分像素变白 ( 积分: 100 )

  • 主题发起人 主题发起人 psyxgq
  • 开始时间 开始时间
P

psyxgq

Unregistered / Unconfirmed
GUEST, unregistred user!
属于新手,提问有说不明白的地方还望指教。
想实现下面的描述:
整个电脑屏幕是黑色的背景,每按动一次button按钮,在屏幕左上方一个固定(200*100pixel)的范围内,随机的找出1000个像素点,让这些像素点成为白色,当再次按下按钮,原来的1000个像素点恢复,又找出新的1000个像素点成为白色。
上面的过程怎么实现?能给出代码么?谢谢!
 
属于新手,提问有说不明白的地方还望指教。
想实现下面的描述:
整个电脑屏幕是黑色的背景,每按动一次button按钮,在屏幕左上方一个固定(200*100pixel)的范围内,随机的找出1000个像素点,让这些像素点成为白色,当再次按下按钮,原来的1000个像素点恢复,又找出新的1000个像素点成为白色。
上面的过程怎么实现?能给出代码么?谢谢!
 
除了你的程序有这个功能外,不是显示器就是显示卡有问题。
 
是不是显示卡驱动装错啦
 
两位理解错了。我不是在说电脑除了问题。
我是想做一个dephi得程序,实现我的描述。
 
procedure TForm1.Button1Click(Sender: TObject);
var i:integer ;
begin
for i:=0 to 1000 do
Canvas.Pixels[Random(Screen.Height),Random(Screen.Width)]:=clWhite;
end;


开始的时候注意...
procedure TForm1.FormCreate(Sender: TObject);
begin
Randomize;
end;
 
还应该将这1000个点的坐标及原先的颜色值保存下来,以便恢复显示。
 
先用一个TBitmap对象和BitBlt函数把作图区域的内容保存起来,然后照上面朋友的代码画出1000个点,要恢复的时候,再用BitBlt函数把TBitmap对象中的内容恢复到指定区域
 
还想问一下,上面的程序运行时间与用控件后运行的时间上会不会有差别?
我希望的是耗时最好没有或极少。
 
路过`````````
 
多人接受答案了。
 

Similar threads

D
回复
0
查看
2K
DelphiTeacher的专栏
D
D
回复
0
查看
1K
DelphiTeacher的专栏
D
S
回复
0
查看
3K
SUNSTONE的Delphi笔记
S
S
回复
0
查看
2K
SUNSTONE的Delphi笔记
S
D
回复
0
查看
1K
DelphiTeacher的专栏
D
后退
顶部