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

📄 main.~pas

📁 測 USB 鼠 標 的 PVID 號
💻 ~PAS
字号:
unit Main;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, ComCtrls, ExtCtrls, StdCtrls, JvHidControllerClass, Buttons,
  RzPanel;

type
  TMainfrm = class(TForm)
    HidCtl: TJvHidDeviceController;
    RzPanel4: TRzPanel;
    RzPanel1: TRzPanel;
    RzPanel2: TRzPanel;
    RzPanel3: TRzPanel;
    Label3: TLabel;
    Label1: TLabel;
    Label4: TLabel;
    Shape1: TShape;
    procedure FormShow(Sender: TObject);
    procedure HidCtlDeviceChange(Sender: TObject);
    function HidCtlEnumerate(HidDev: TJvHidDevice;
      const Idx: Integer): Boolean;
    procedure FormMouseWheelDown(Sender: TObject; Shift: TShiftState;
      MousePos: TPoint; var Handled: Boolean);
    procedure FormMouseWheelUp(Sender: TObject; Shift: TShiftState;
      MousePos: TPoint; var Handled: Boolean);
    procedure Shape1MouseDown(Sender: TObject; Button: TMouseButton;
      Shift: TShiftState; X, Y: Integer);
    procedure Shape1MouseMove(Sender: TObject; Shift: TShiftState; X,
      Y: Integer);
    procedure Shape1MouseUp(Sender: TObject; Button: TMouseButton;
      Shift: TShiftState; X, Y: Integer);
    procedure FormActivate(Sender: TObject);
    procedure FormCreate(Sender: TObject);
    procedure FormResize(Sender: TObject);
  private
    { Private declarations }
    procedure draw(int_x:Integer;int_y:integer);

  public
    { Public declarations }
    s_vid:string;s_pid:string;
    activeflg:Boolean;
    function VPid(i_vid:string;i_pid:string;vpid:string):boolean;
  end;

var
  Mainfrm: TMainfrm;
  btnint:Integer;
  clickflg:boolean;
  int_M:integer;
  L_click:boolean;
  R_click:boolean;
implementation

uses ID;

{$R *.dfm}
function tmainfrm.VPid(i_vid:string;i_pid:string;vpid:string):Boolean;
begin
   Result:=true;
   if ( i_vid<> Copy(vpid,5,4)) or  (i_pid<>Copy(vpid,14,4)) then Result:=False
end;
procedure tMainfrm.draw(int_x:Integer;int_y:integer);
begin
       case btnint of
       0:Canvas.Pen.Color:=clGreen;
       1:Canvas.Pen.Color:=clBlue;
       2:Canvas.Pen.Color:=clRed;
       end;
       Canvas.LineTo(int_x,int_y);
end;
procedure TMainfrm.FormShow(Sender: TObject);
begin
  clickflg:=false;btnint:=-1;int_M:=0;Mainfrm.Top:=0;L_click:=false;R_click:=False;
  Mainfrm.Left:=0;Mainfrm.Width:=Screen.Width;Mainfrm.Height:=Screen.Height;
  s_vid:='';s_pid:='';
end;

procedure TMainfrm.HidCtlDeviceChange(Sender: TObject);
begin
 Label3.Caption:='';Label1.Caption:='X: 0 Y:0';label4.Caption:='Z:0';Sleep(20);
 HidCtl.Enumerate;
end;

function TMainfrm.HidCtlEnumerate(HidDev: TJvHidDevice;
  const Idx: Integer): Boolean;
var
  Dev: TJvHidDevice;
  vid,pid:string;
begin

   if HidDev.ProductName <> '' then
   begin
     vid:='';pid:='';
     vid:=Format('%x',[HidDev.Attributes.VendorID]);pid:=Format('%x',[HidDev.Attributes.ProductID]);
     case Length(vid) of
     1:vid:='000'+Vid;
     2:vid:='00'+Vid;
     3:vid:='0'+Vid;
     4:vid:=Vid;
     end ;
     case Length(pid) of
     1:pid:='000'+pid;
     2:pid:='00'+pid;
     3:pid:='0'+pid;
     4:pid:=pid;
     end ;
     Label3.Caption:='VID:'+vid+' PID:'+pid;
     if ( s_vid<>'') and ( s_pid<>'' )then
     begin
     if not VPid(s_vid,s_pid,Label3.Caption) then
     begin
     	   MessageBox(0, '代刚公夹

⌨️ 快捷键说明

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