-
Delphi获取BMP图片指定点RGB值
delphi获取图片指定点RGB颜色值,载入一张BMP图像,鼠标单击图像任意处,将获取该处的RGB颜色分量图。任何一种颜色都是由RGB分量值构成,获取这些分量值,就可以改变这些值,从而改变颜色,为程序的进一步处理提供基础保障,获取RGB颜色分量,相关代码如下:
procedure TForm1.SpeedButton1Click(Sender: TObject);
begin
if OpenPictureDialog1.Execute then
begin
image1.Picture.LoadFromFile(OpenPicturedialog1.FileName);
Form1.Canvas.Draw(0,0,image1.Picture.Bitmap);
end;
end;
- 2023-09-03 19:00:03下载
- 积分:1
-
Delphi Canvas.Brush为窗体绘制渐变背景
Delphi 为窗体绘制渐变背景,这里使用了Delphi中的Canvas.Brush.Color来实现窗口背景的渐变色,不错吧?如示例图的左右渐变效果,实现的代码:
for i:=0 to self.Width-1 do
begin
c1:=GetRValue(StartColor)+Trunc(i*(GetRValue(EndColor)-GetRValue(StartColor))/(self.Width-1));
c2:=GetGValue(StartColor)+Trunc(i*(GetGValue(EndColor)-GetGValue(StartColor))/(self.Width-1));
c3:=GetBValue(StartColor)+Trunc(i*(GetBValue(EndColor)-GetBValue(StartColor))/(self.Width-1));
Canvas.Brush.Color:=RGB(c1,c2,c3);
//每次画矩形的画刷颜色
Dct:=Rect(i,0,i+1,self.Height);
//每次刷绘的矩形区域
Canvas.FillRect(Dct);
//填充颜色
end;
- 2022-05-24 21:26:59下载
- 积分:1
-
Delphi 使播放的Flash随窗口大小改变
Delphi 使播放的Flash随窗口大小改变,也就是让Flash播放的窗口内容随着父窗口的大小而自动适应,把窗口拉大时,Flash画面也会跟着变大,让内容适应窗口大小的变化。
- 2022-05-31 21:57:49下载
- 积分:1
-
Delphi 创建Excel表格文件
Delphi 读取SQLSERVER数据库内容,并创建Excel表格文件,将内容导出到excel文件中,核心同样是基于createoleobject对象的excel.application方法实现,创建EXECEL对象 ,添加comobj单元,用循环加入记录,将数据表导入到Excel表中,正式开始EXECEL输出。
- 2022-02-15 04:17:26下载
- 积分:1
-
Delphi 程序控制关闭显示器
Delphi 程序控制关闭显示器,不过我很好奇Delphi真能关闭显示器么?如果是用Delphi截断视频信号的输出,让显示器黑屏,这倒是有可能哦,但是让Delphi直接关闭显示器,有点不太可能吧?看了看代码,原来是这样:
begin
//关闭显示器
PostMessage(Application.Handle,WM_SYSCOMMAND,SC_MONITORPOWER,1);
//打开显示器:
PostMessage(Application.Handle,WM_SYSCOMMAND,SC_MONITORPOWER,0);
end;
- 2022-04-01 11:14:50下载
- 积分:1
-
Delphi 单击StringGrid列进行排序
Delphi 单击StringGrid列进行排序,StringGrid行的任意列单击,就会重新排序一次,排序规则可以自己定义,这种排序功能可有效提升StringGrid显示数据的易用性,增强其功能,提升用户体验,本例子源代码相当简单,对学习者也有很好的帮助作用。参见以下代码:
begin
if Button = mbRight then Exit;
TStringGrid(Sender).MouseToCell(X, Y, vCol, vRow);
if (vRow < 0) or (vRow >= TStringGrid(Sender).FixedRows) then Exit;
StringGridRowSort(TStringGrid(Sender), vCol, vOldCol = vCol);
if vOldCol = vCol then
vOldCol := - vOldCol
else
vOldCol := vCol;
end;
- 2022-05-29 23:30:47下载
- 积分:1
-
Delphi 静音 左右声道音量控制
Delphi控制系统静音,两个声道均不发出声音,同时若在非静态状态下,可控制左、右声道的音量大小,在代码中@表示指向变量v的指针(32位),调用此函数的用意就是得到右声道的值,在调节左声道的时候,不改变右声道}数字前面加$表示是十六进制数字,(t shl 8)表示t左移8位,部分参数设置代码如下:
procedure TForm1.FormCreate(Sender: TObject);
var
v:longint;
begin
waveoutgetvolume(0,@v);//得到现在音量,@v表示指向变量v的指针(32位)
trackbar1.Position:=hi(v);//设置左滑块的正确位置
trackbar2.Position:=hi(v shr 16);//设置右声道滑块的正确位置
end;
- 2022-06-02 00:55:40下载
- 积分:1
-
Delphi 监测程序多久未被使用
Delphi 监测程序多久未被使用,以秒数来衡量使用了多久,打开一次然后再关闭,就可以显示使用了多长时间。
- 2022-06-02 20:45:39下载
- 积分:1
-
使用Delphi 制作无闪烁的动画效果
使用Delphi 制作无闪烁的动画效果,如何实现不闪烁的动画呢?这个例子或许能找到一些答案:部分代码如下:
var
x,i: Integer;
dir,run: Boolean;
begin
b := TBitMap.Create;
b.Width := AnimWindow.Width;
b.Height := 32;
b.Canvas.Pen.Color := clBtnFace;
b.Canvas.Brush.Color := clBtnFace;
b.Canvas.Rectangle(0,0,AnimWindow.Width,32);
run := True;
dir := False;
x := 0;
while run do
for i := 0 to AnimWindow.ImageList1.Count-1 do
begin
b.Canvas.Rectangle(0,0,AnimWindow.Width,32);
AnimWindow.ImageList1.Draw(b.Canvas,x,0,i);
Synchronize(DrawAnimPic);
Sleep(AnimWindow.SpinEdit1.Value);
if (x = 0) or (x = 300) then dir := not dir;
if dir then Inc(x) else Dec(x);
end;
b.Free;
end;
- 2023-03-22 21:40:04下载
- 积分:1
-
Delphi时间换算 换算秒数为时间格式
Delphi时间换算 换算秒数为时间格式,其实这种换算还是挺简单的吧,TimeToStr(I/86400);就可以算出。在运行的程序窗口中,输入任意秒数(必需输入数字)后,点击确定按钮,即可显示出时间格式的秒数了。具体的代码这里不帖了,需要的请下载完整源码吧,运行效果图如截图所示。
- 2022-07-17 19:50:24下载
- 积分:1