⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 00206.txt

📁 Delphi编程五大妙招源程序
💻 TXT
字号:
1:界面色彩渐变效果的实现 
  界面色彩渐变效果是通过用渐变的画刷刷绘依次相邻的矩形块实现的。下面 
列举实例说明: 
  1.新建一个表单,假设其Width为500,设置一个按钮Button1,按此按钮将把表 
单置为由左向右由黄变白的渐变效果。 
procedure TForm1.Button1Click(Sender: TObject);
var
  i,j:Integer;
  Dct:TRect;
begin
  j:=Form1.height; //获得表单高度
  for i:=0 to 255 do //此处设置RGB()中一个颜色值
  begin
    Canvas.Brush.Color:=RGB(255,255,i); //每次画矩形的画刷颜色
    Dct:=Rect(i*2,0,(i+1)*2,j); //每次刷绘的矩形区域
    Canvas.FillRect(Dct); //填充颜色
  end;
end;


2:图形整体拉出效果 
  单纯的图形整体拉出效果比较简单,动态地改变图形区域的大小就可以实现, 
但事先应将图形的“Stretch”设置为“True”。 
  举例说明下拉效果: 
  1.在表单上放置一图片,属性“Height”设为0,“Stretch”设置 
为True。添加“Timer”构件, “Interval”设为200,“Enable”设为False。 

procedure TForm1.Timer1Timer(Sender: TObject);
begin
Image1.Height:=Image1.Height+20; //设置增量
if image1.Height>Form1.Height-50 then Timer1.Enabled:=FALSE; //图形整体拉出完毕
end;

procedure TForm1.Button2Click(Sender: TObject);
begin
  Timer1.Enabled := True ;
  Image1.Height := -1 ;
end;
  

3:我怎样才可以把窗体的系统菜单添加到窗体的菜单条上?
制作方法:在Form1放置一个MainMenu1,并且创建一个菜单项File1,同时在Private的声明部分说明一个过程Procedure SystemMenuClick(Sender: TObject);,本程序的运行:单击Button3就可以执行。

procedure TForm1.Button3Click(Sender: TObject);
var
  item: TMenuItem;
  sysmenuHandle: HMENU;
  i, itemcount: Integer;
  buffer: array [0..128] of Char;
  itemID: Integer;
  itemflags: DWORD;
begin
  handleNeeded;
  sysmenuHandle := GetSystemMenu( handle, false ); //得到系统菜单的handle
  If sysmenuHandle <> 0 Then
  Begin
    itemcount := GetMenuItemcount( sysmenuHandle ); //得到系统菜单的个数
    for i:= 0 to itemcount - 1 do
    begin
      itemflags := GetMenuState( sysmenuhandle, i, MF_BYPOSITION ); //得到指定菜单项的当前状态
      If (itemflags and MF_SEPARATOR) = MF_SEPARATOR Then //如果是横线
                        item := NewLine
      Else Begin
         GetMenuString( sysmenuhandle, i, buffer, sizeof(buffer),MF_BYPOSITION ); //得到指定菜单项的Caption
         itemID := GetMenuItemID( sysmenuhandle, i ); //得到指定菜单的在系统菜单中的ID
         item := NewItem( buffer, 0,
                         (itemflags and MF_CHECKED) = MF_CHECKED,
                         (itemflags and (MF_DISABLED or MF_GRAYED)) = 0,
                          SystemMenuClick,
                          0,
                          format('Sysmenu_%d',[itemid])); //创建新的MenuItem
        item.tag := itemID;
      End;
      File1.Add( item );
    end;
  End;

end;


procedure TForm1.SystemMenuClick(Sender: TObject);
begin
  With Sender As TMenuitem do
    Self.perform( WM_SYSCOMMAND, Tag, 0 );
end;

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -