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

📄 main.pas

📁 dephi 列印codesoft 檔案調用
💻 PAS
字号:
unit Main;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, ExtCtrls, StdCtrls,ComObj;


type
  TForm1 = class(TForm)
    Panel1: TPanel;
    Panel2: TPanel;
    LabeledEdit1: TLabeledEdit;
    procedure LabeledEdit1KeyDown(Sender: TObject; var Key: Word;
      Shift: TShiftState);
    Function Get_Result(MAC: String): String;
    Function Get_SubStr_Fun(B_Str,Flag_Str:String;Var RetValue:String):String;
  private
    { Private declarations }
  public
    OLE_Server: OLEvariant;
    OLE_LAB: Variant;
    { Public declarations }
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.LabeledEdit1KeyDown(Sender: TObject; var Key: Word;
  Shift: TShiftState);
var
filename: string;
ordata :string;
result :string;
result1 :string;
RetValue :string;
begin
  if key<>13 then  Exit;
  try
    result1 := Get_SubStr_Fun('123abc456','abc', RetValue);
    ordata := '3EA376';
    result := Get_Result(ordata);

    OLE_Server := CreateOleObject('LPPX.Application');
    OLE_Lab := OLE_Server.ActiveDocument;

   FileName := GetCurrentDir + '\pwa.LAB';
   if FileExists(filename) then
    begin
      OLE_LAB.Open(filename);
      OLE_LAB.Variables['SN'].Value :=trim(LabeledEdit1.Text) ;
      ////OLE_LAB.Variables['PNO'].Value := pn;

      OLE_LAB.PrintLabel(1, , , , 1);
      OLE_LAB.FormFeed;
      OLE_LAB.Close;
    end
    else
    begin
      MessageDlg('CodeSoft label not exist', mterror, [mbok], 0);

    end;
  finally
    ole_server.quit;
  end;

  LabeledEdit1.SelectAll;
  LabeledEdit1.SetFocus;

end;

//end.

Function TForm1.Get_Result(MAC: String): String;
Var
  MAC_Lenght: Integer;
  MAC_Pos: integer;
  MAC_HEX: String;
  MAC_DEC: Integer;
  Temp_Result: String;
  Mac_Hear: String;
Begin
  Temp_Result := '';
  MAC_Lenght := Length(Trim(MAC));
  Mac_Hear := Copy(MAC, 1, MAC_Lenght - 6);
  MAC := Copy(MAC, MAC_Lenght - 5, 6);
  For MAC_Pos := 1 To 6 Do
  Begin
    MAC_HEX := MAC[MAC_POS];
    MAC_DEC := Strtoint('$' + MAC_HEX) + MAC_Pos;
    Case MAC_DEC Of
      0..15: Temp_Result := Temp_Result + IntToHex(MAC_DEC,1);//DecToHex(MAC_DEC);
      16..21: Temp_Result := Temp_Result+ IntToHex((MAC_DEC - 16),2);//DecToHex(MAC_DEC - 16);
    End;
  End;
  Result := Temp_Result;
End;

Function Tform1.Get_SubStr_Fun(B_Str,Flag_Str:String;Var RetValue:String):String;
Var
  T_Str:String;
  I:Integer;
begin
  T_Str := '';
  I := Pos(Flag_Str,B_Str);
  if (I>0) then
  begin
    T_Str := Copy(B_Str,1,I-1);
    RetValue := Copy(B_Str,I+1,Length(B_Str));
  end
  else
    T_Str := 'UnKnow Flag_Str';
  Result := Trim(T_Str);
end;


end.










⌨️ 快捷键说明

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