易截截图软件、单文件、免安装、纯绿色、仅160KB

delphi 获取指定文件的图标

前段时间因为项目需要,获取指定文件的图标,绕了很多弯子,现在弄出来了,跟大家共享下.
unit Unit1;
interface
uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls,ShellAPI, ExtCtrls;
type
  TForm1 = class(TForm)
    lbl1: TLabel;
    btn1: TButton;
    dlgOpen1: TOpenDialog;
    imgPic: TImage;
    procedure btn1Click(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;
var
  Form1: TForm1;
  Mem : TMemoryStream;
implementation
{$R *.dfm}
procedure TForm1.btn1Click(Sender: TObject);
var
  FileInfo : TSHFileInfo;
  hc: TIcon;
  Bitmap : TBitmap;
begin
  Mem := Tmemorystream.Create;
  if dlgOpen1.Execute then
  begin
    FileInfo.iIcon := 0;
    SHGetFileInfo(pchar(dlgOpen1.filename), 0, FileInfo, SizeOf(TSHFileInfo),
    SHGFI_ICON or SHGFI_LARGEICON);
    imgPic.Picture.Icon.Handle := FileInfo.hIcon;
    hc := TIcon.Create;
    Bitmap := TBitmap.Create;
    hc.Handle := FileInfo.hIcon;
    Bitmap.width := hc.width;
    Bitmap.height := hc.height;
    Bitmap.Canvas.Draw(0, 0, hc);
    Bitmap.SaveToStream(Mem);
    Mem.SaveToFile(ExtractFilePath(paramstr(0)) + 'qinxh.bmp');
    imgPic.Picture.LoadfromFile(ExtractFilePath(paramstr(0)) + 'qinxh.bmp');
    hc.Free;
    Bitmap.Free;
  end;
end;
end.


相关文档:

Delphi中的Record


在Delphi中的Record类型中,与之C语言对应的即是结构体类型(struct
),也可能是为了符合C语言或C++程序员的习惯,对于它在Delphi中的应用存在的一些问题进行初步的说明。在Delphi中的记录体类型有两种方式定义
Type
    RecTest = record (packed
)
      ID :integer; ......

Delphi主窗口任务栏菜单的问题

Delphi的VCL框架在创建应用时TApplication是一个自动创建的隐藏窗口,其它创建的窗口是自动以该窗口为窗口,这就导致创始的主窗口在任务栏的系统菜单只有三项,只要在主窗口的Create事件中将系统菜单用Application的系统菜单替换,并将SysCommand消息转发到主窗口就正常了。
unit Unit1;
interface
uses
  Windows ......

上位机完工 ——delphi 告一段落

全图

保存数据为txt文档

保存为图像

打印——pdf打印机
 
下一步 有时间的话 实现 标签页面   USB转串口自动识别设备  //重新回到STM32上面-02-26  21:35:21
......

delphi键盘按键伪码

Delphi键盘按键伪码
用法:if key = chr(VK_RETURN) then...
常数名称 十六进制值 十进制值 对应按键
VK_LBUTTON 01 1 鼠标的左键
VK_RBUTTON 02 2 鼠标的右键
VK-CANCEL 03 3 Contol-break 执行
VK_MBUTTON 04 4 鼠标的中键(三按键鼠标)
VK_BACK 08 8 Backspace键
VK_TAB 09 9 Tab键
VK_CLEAR 0C 12 Clear键
VK ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号