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

📄 unit1.pas

📁 usb hid 控件
💻 PAS
字号:
unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
  ComCtrls, HidControllerClass, Hid;

type
  TForm1 = class(TForm)
    JvHidDeviceController1: TJvHidDeviceController;
    TreeView1: TTreeView;
    procedure JvHidDeviceController1DeviceChange(Sender: TObject);
    function  JvHidDeviceController1Enumerate(HidDev: TJvHidDevice;
      Index: Integer): Boolean;
  private
    { Private declarations }
    FRoot: TTreeNode;
  public
    { Public declarations }
    procedure EnumerateNodes(HidDev: TJvHidDevice; Parent: TTreeNode; Idx: WORD);
  end;

var
  Form1: TForm1;

implementation

{$R *.DFM}

procedure TForm1.JvHidDeviceController1DeviceChange(Sender: TObject);
begin
  TreeView1.Items.Clear;
  FRoot := TreeView1.Items.Add(nil,'HID-Devices');
  JvHidDeviceController1.Enumerate;
end;

procedure TForm1.EnumerateNodes(HidDev: TJvHidDevice; Parent: TTreeNode; Idx: WORD);
var
  Node: TTreeNode;
begin
  repeat
    Node := TreeView1.Items.AddChild(Parent,
      Format('CollectionType=%d Usage=%d UsagePage=%d',[HidDev.LinkCollectionNodes[Idx].CollectionType,
      HidDev.LinkCollectionNodes[Idx].LinkUsage,
      HidDev.LinkCollectionNodes[Idx].LinkUsagePage]));
    if (HidDev.LinkCollectionNodes[Idx].FirstChild <> 0) and
       (HidDev.LinkCollectionNodes[Idx].FirstChild <> Idx) then
      EnumerateNodes(HidDev, Node, HidDev.LinkCollectionNodes[Idx].FirstChild);
    if Idx = HidDev.LinkCollectionNodes[Idx].NextSibling then
       Break;
    Idx := HidDev.LinkCollectionNodes[Idx].NextSibling;
  until Idx = 0;
end;

function TForm1.JvHidDeviceController1Enumerate(HidDev: TJvHidDevice;
  Index: Integer): Boolean;
var
  Node: TTreeNode;
begin
  Node := TreeView1.Items.AddChild(FRoot, HidDev.ProductName);
  EnumerateNodes(HidDev, Node, 1);
  TreeView1.FullExpand;
  Result := True;
end;

end.

⌨️ 快捷键说明

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