亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? unit1.pas

?? delphi 利用usb高速數據采集、及圖形打印源代碼
?? PAS
字號:
unit Unit1;

interface 

uses 
  Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
  StdCtrls, ComCtrls, ExtCtrls;
Const
Wm_CommNotify=WM_User+12; //建立消息
type
  TForm1 = class(TForm)
    Memo1: TMemo;
    Edit1: TEdit;
    Edit2: TEdit;
    Panel1: TPanel;
    Panel2: TPanel;
    Image1: TImage;
    ScrollBar1: TScrollBar;
    Label1: TLabel;
    Button1: TButton;
    Button2: TButton; //制作按鈕

    procedure FormDestroy(Sender: TObject); //窗體關閉事件
    procedure FormCreate(Sender: TObject);
      procedure Label1MouseDown(Sender: TObject; Button: TMouseButton;
      Shift: TShiftState; X, Y: Integer);
    procedure Label1MouseMove(Sender: TObject; Shift: TShiftState; X,
      Y: Integer);
    procedure label1mouseup(sender: tobject;button:tmousebutton;
      shift: tshiftstate; x, y:integer);
      procedure ScrollBar1Change(Sender: TObject);
    procedure Button1Click(Sender: TObject);

  private //私有事件
  Procedure CommInitialize;

  Procedure MsgComm(Var Msg:Tmessage); Message WM_CommNotify;

    { Private declarations }
  public                          
    { Public declarations }
  end;
  TComm=Class(TThread)//創見線程類

  Protected //受保護
  Procedure Execute;override;//線程
  end;
 
var
 
  Form1: TForm1;
  Hcom,Post_Event:Thandle;//句柄
  LpolW,LpolR:Poverlapped;
  RXComm:TComm;
  u,a,b,c:integer;
  origin: Tpoint;
  image_left: integer;
  image_top: integer;
  visa1: Tpoint; //鼠標當前位置相對圖像右下角的坐標
  visa2: Tpoint; //鼠標當前位置相對圖像左上角的坐標
  canmove,incept,test: boolean;
     MyArray:   Array[0..60000]   of   Integer;
     myarray2:  array[0..60000]   of  integer;
    pts: array[0..9999] of TPoint;
implementation

{$R *.DFM}
 uses unit2;
 var
 thread1:mymath1;

Procedure TComm.Execute;
var
dwEvtmask,dwOvres,bb:Dword;
RXFinish,incept:Bool;
begin
// showmessage('線程打開');
  while true do
  begin
    DwEvtMask:=0;
    RXFinish:=WaitCommEvent(hcom,dwevtmask,nil);//LpolR);   //等待串口事件EV_RXCHAR
    {if not RXFinish then               //如果返回True,已立即完成,否則繼續判斷
      if GetLastError()=ERROR_IO_PENDING then //正在接收數據
      begin
        bb:=WaitForSingleObject(LpolR^.hEvent,2500);//等待500ms
        Case bb of
          Wait_Object_0:  RXFinish:=GetOverLappedResult(hcom,LpolR^,dwOvRes,False);
                           //返回False,出錯
          Wait_TimeOut:  RXFinish:=False;//定時溢出
          else RXFinish:=False;   //出錯
        end;
      end else RXFinish:=False; }
    if RXFinish then
    begin
    // if WaitForsingleobject(Post_Event,infinite)=Wait_Object_0 then  //等待同步事件置位
     // begin
        resetEvent(Post_Event);      //同步事件復位
        PostMessage(Form1.handle,WM_CommNotify,0,0);
     // end;
    end;
  end;
end;

Procedure TForm1.CommInitialize;
 Var
    lpdcb:Tdcb;
    Success,error:boolean;
begin
    hcom:=createfile('com4',
    generic_read or generic_write,
    0,
    nil,
    open_existing,
    file_attribute_normal or file_flag_overlapped,0);

    if hcom=invalid_handle_value then showmessage('錯誤:服務器無法打開串口設備!')
    else
        setupcomm(hcom,4096,4096);
        error:=getcommstate(hcom,lpdcb);
        if not error then ShowMessage('無法獲取串口當前參數!');
        lpdcb.baudrate:=9600;
        lpdcb.StopBits:=ONESTOPBIT;
        lpdcb.ByteSize:=8;
        lpdcb.Parity:=NOPARITY;
        error:=Setcommstate(hcom,lpdcb);
        if not error then ShowMessage('無法設置串口參數!');
        success:=setcommMask(hcom,ev_rxchar);
        if not success then ShowMessage('串口監視事件創建錯誤!');
end;

Procedure TForm1.MsgComm(Var Msg:Tmessage);      //接收數據
var
 clear:boolean;
 coms:TComStat;
 cbNum,Cbread,lpErrors:Dword;
 temp,s:string;
 p,i:integer;
begin
   SetLength(temp,2);
 clear:=clearCommerror(hcom,lperrors,@Coms);
 if clear then
 begin
   cbnum:=Coms.cbInQue;    //獲取接收緩沖區待接收字節數
   setlength(s,cbnum+1);     //分配內存
   ReadFile(hcom,PChar(S)^,cbnum,Cbread,LpolR);   //讀串口
   setlength(s,cbread);      //分配
   SetEvent(Post_Event);     //同步事件置位
   for I:=1 to Length(S) do
       begin
         if I=1 then
          begin
           if u=10000 then
           begin
               incept:=false;
               u:=0;
               //image1.Canvas.Polyline(pts);
               end;
                if incept then
                begin
                 if ord(s[1])>100 then
                  a:=ord(s[1])
                  else
                  begin
                  b:=ord(s[1]) ;
                  c:=a+b;
                  image1.Canvas.Pixels[u,c]:=clblue;
                  image1.Canvas.Pixels[u,a]:=clblue;
                  image1.Canvas.Pixels[u,b]:=clblue;
                  u:=u+1;
                  end;
               end;
           end
           else
           begin
              if u=10000 then
              begin
               incept:=false;
               u:=0;
               //image1.Canvas.Polyline(pts);

               end;
                if incept then
                begin
                 if ord(s[1])>100 then
                  a:=ord(s[1])
                  else
                  b:=ord(s[1]) ;
                  c:=a+b;
                   image1.Canvas.Pixels[u,c]:=clblue;
                  image1.Canvas.Pixels[u,a]:=clblue;
                  image1.Canvas.Pixels[u,b]:=clblue;
                  u:=u+1;
                  end;
               end;
           end;
        end;


  end;
   //edit1.Text:=inttostr(u);
  // Memo1.text:=inttostr(myarray[3]);

// end;

procedure TForm1.FormDestroy(Sender: TObject);   //釋放內存
begin
 CloseHandle(LpolW^.hEvent);
 CloseHandle(LpolR^.hEvent);
 dispose(lpolW);
 dispose(lpolR);
 LpolW:=Nil;
 LpolR:=Nil;
 RXComm.Terminate;
 SetEvent(Post_Event);
 CloseHandle(Post_Event);
 CloseHandle(hcom);
end;

procedure TForm1.FormCreate(Sender: TObject);    //初始化內存及串口
begin
  Comminitialize;
  New(lpolW);
  New(lpolR); 
  LpolW^.Internal:=0;
  LpolW^.InternalHigh:=0;
  LpolW^.Offset:=0;
  LpolW^.OffsetHigh:=0;
  LpolW^.hEvent:=Createevent(nil,true,False,nil);
  Lpolr^.Internal:=0;
  Lpolr^.InternalHigh:=0;
  Lpolr^.Offset:=0;
  Lpolr^.OffsetHigh:=0;
  Lpolr^.hEvent:=Createevent(nil,true,False,nil);
  PurgeComm(Hcom,Purge_TxAbort or Purge_RxAbort or Purge_Txclear or Purge_Rxclear);
  Post_Event:=Createevent(nil,true,true,nil);
  RXComm:=Tcomm.Create(false);
  thread1:=mymath1.create;
  thread1.resume;
  u:=0;
  incept:=true;
  test:=false;
  //image2.Canvas.Pen.Width := 2;
 // image2.Canvas.Pen.Color := clRed;
  //image2.Canvas.Brush.Color := clYellow;
end;

procedure TForm1.ScrollBar1Change(Sender: TObject);
begin
   image1.Left:=-scrollbar1.Position*(image1.Width-panel2.Width) div 100;
end;

procedure TForm1.Label1MouseDown(Sender: TObject; Button: TMouseButton;
  Shift: TShiftState; X, Y: Integer);
begin
  if Button = mbLeft then
    begin
      origin.x := X;
      origin.y := Y;
     // edit1.text:=inttostr(x);

      image_left := image1.left;
      image_top := image1.top;
      visa1.x := X - (image1.width - panel2.width + image1.left);
      visa1.y := Y - (image1.height - panel2.height + image1.top);
      visa2.x := X - image1.left;
      visa2.y := Y - image1.top;
      canmove := true;
    end;
end;


procedure TForm1.Label1MouseMove(Sender: TObject; Shift: TShiftState; X,
  Y: Integer);
begin
  if canmove then
    begin
      if X < visa1.x then X := visa1.x;
    if X > visa2.x then X := visa2.x;
      if Y < visa1.y then Y := visa1.y;
     if Y > visa2.y then Y := visa2.y;
      image1.left := image_left + (X - origin.x);
      image1.top := image_top + (Y - origin.y);
       edit2.text:=inttostr(-image1.left div(image1.Width-panel2.Width) * 100);
     scrollbar1.Position:=-image1.left* 100 div (image1.Width-panel2.Width) ;
    end;

end;
procedure tform1.label1mouseup(Sender: TObject; Button: TMouseButton;
  Shift: TShiftState; X, Y: Integer);
  begin
  canmove:=false;
  end;



procedure TForm1.Button1Click(Sender: TObject);
begin
   image1.Canvas.Polyline(pts);
end;



end.

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
亚洲国产欧美在线| 成人国产在线观看| 国产成人精品三级麻豆| 91国偷自产一区二区开放时间 | 奇米影视一区二区三区小说| bt7086福利一区国产| 欧美一区二区视频免费观看| 亚洲丝袜美腿综合| 国产剧情在线观看一区二区| 欧美日韩国产另类一区| 亚洲日本在线天堂| 成人免费看视频| 精品国精品国产尤物美女| 亚洲另类色综合网站| 国产精品小仙女| 精品国产一区久久| 美女高潮久久久| 欧美久久久久久久久久| 夜夜精品视频一区二区 | 国产精品理论片在线观看| 日本系列欧美系列| 欧美精品在线视频| 亚洲国产sm捆绑调教视频 | 亚洲人成精品久久久久久| 国产精品亚洲人在线观看| 精品伦理精品一区| 美日韩一区二区| 日韩美女一区二区三区四区| 日韩成人伦理电影在线观看| 欧美在线你懂的| 亚洲国产日韩av| 欧美精品一卡二卡| 美女脱光内衣内裤视频久久网站| 欧美日韩综合在线免费观看| 一区二区三区欧美日| av在线不卡电影| 日韩一区欧美一区| 国产拍欧美日韩视频二区| 九九国产精品视频| 国产性色一区二区| 丰满放荡岳乱妇91ww| 亚洲日本在线天堂| 欧美日韩一区在线| 奇米影视一区二区三区| 日韩欧美成人午夜| 国产大陆精品国产| 国产精品免费视频观看| 日本大香伊一区二区三区| 天天综合网 天天综合色| 日韩美女在线视频| 岛国一区二区在线观看| 一区二区在线看| 91精品国产一区二区三区香蕉 | 成人深夜视频在线观看| 亚洲欧美日韩久久| 欧美日韩大陆在线| 久久精品噜噜噜成人av农村| 久久久www成人免费毛片麻豆| 成人激情免费网站| 一区二区三区资源| 日韩色视频在线观看| 国产精品一区在线观看乱码| 亚洲美女视频一区| 日韩午夜激情免费电影| 成人免费av资源| 亚洲电影激情视频网站| 久久久久久久久久久久电影| 91蝌蚪porny九色| 另类成人小视频在线| 中文天堂在线一区| 日韩视频免费观看高清在线视频| 国产麻豆视频精品| 一区二区三区精品视频| 精品国产成人系列| 欧美在线999| 国产成人在线观看免费网站| 一区二区三区精品久久久| 欧美不卡在线视频| 91国在线观看| 国产白丝精品91爽爽久久| 香蕉久久夜色精品国产使用方法| 国产欧美精品国产国产专区| 制服视频三区第一页精品| 成人成人成人在线视频| 精品午夜久久福利影院| 亚洲成人高清在线| 国产精品久久久爽爽爽麻豆色哟哟| 精品视频免费看| 99久久国产综合精品女不卡| 久久99久久99| 亚洲大型综合色站| 一区二区中文字幕在线| 久久综合狠狠综合| 日韩精品一区二区三区在线观看| av爱爱亚洲一区| 国产成人激情av| 精品一区二区三区免费观看| 亚洲成a天堂v人片| 亚洲精品国产精华液| 中文字幕日本不卡| 国产精品丝袜一区| 久久久美女艺术照精彩视频福利播放| 91精品视频网| 欧美精品123区| 欧美伦理影视网| 欧美色视频在线| 欧美午夜不卡视频| ●精品国产综合乱码久久久久| 26uuu欧美日本| 久久久久久毛片| 久久精品夜色噜噜亚洲a∨| 久久蜜桃av一区二区天堂| 精品奇米国产一区二区三区| 欧美一级在线观看| 日韩手机在线导航| 91精品国产91久久久久久一区二区| 欧美日韩在线直播| 欧美理论电影在线| 在线综合亚洲欧美在线视频| 欧美一区二区女人| 精品黑人一区二区三区久久| 欧美zozozo| 国产欧美精品一区二区色综合| 国产拍揄自揄精品视频麻豆| 亚洲国产精品黑人久久久| 国产精品灌醉下药二区| ...av二区三区久久精品| 亚洲女与黑人做爰| 午夜a成v人精品| 激情av综合网| 成人永久aaa| 91久久精品一区二区二区| 欧美另类高清zo欧美| 日韩精品一区二区三区四区| 久久久三级国产网站| 中文字幕一区日韩精品欧美| 亚洲欧美福利一区二区| 视频一区二区三区入口| 黄色小说综合网站| 91女神在线视频| 欧美日本一区二区三区| 欧美电影免费观看高清完整版 | 国产一区二区三区在线观看精品 | 2023国产精品自拍| 亚洲日本在线a| 蜜桃一区二区三区在线观看| 国产精品亚洲午夜一区二区三区| 91蜜桃视频在线| 日韩欧美在线网站| 国产精品国产a级| 蜜乳av一区二区三区| 91影视在线播放| 欧美精品一区二区三| 亚洲在线视频网站| 国产曰批免费观看久久久| 91女人视频在线观看| 欧美videossexotv100| 亚洲精品高清在线| 韩国女主播成人在线观看| 91国产免费看| 久久久久久影视| 午夜精品一区在线观看| 成人夜色视频网站在线观看| 欧美精品777| 亚洲特级片在线| 国产激情一区二区三区| 欧美日韩久久不卡| 亚洲欧美日韩国产综合| 韩国欧美国产一区| 91九色最新地址| 国产成人精品免费| 91福利区一区二区三区| 久久久久青草大香线综合精品| 亚洲国产va精品久久久不卡综合| 高清不卡一区二区| 日韩一级大片在线| 亚洲国产精品久久不卡毛片 | 成人久久久精品乱码一区二区三区 | 欧美性色黄大片手机版| 国产精品人妖ts系列视频| 麻豆精品国产91久久久久久| 在线观看成人免费视频| 国产精品日韩精品欧美在线| 国产一区二区三区香蕉| 欧美一区二区三区色| 亚洲综合无码一区二区| 99免费精品视频| 国产日韩高清在线| 国产福利一区在线| 精品日韩一区二区三区免费视频| 日韩一区精品字幕| 欧美伦理影视网| 夜夜精品浪潮av一区二区三区| 99麻豆久久久国产精品免费| 国产精品美日韩| 成人app网站| 国产精品久久久久久久第一福利| 高清在线观看日韩| 国产精品入口麻豆九色| 国产成人亚洲精品青草天美|