中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

ActiveX控件的使用-js實現打印超市小票功能代碼詳解

發布時間:2020-09-25 15:08:03 來源:腳本之家 閱讀:407 作者:鄭州的文武 欄目:web開發

·應客戶的需求= = ,要在網頁端實現打印小票的功能

·先來一張打印出的小票效果圖(合計明顯不對,因為有修改訂單功能,請各位忽略)

ActiveX控件的使用-js實現打印超市小票功能代碼詳解

用什么方法實現呢:

我想應該是有三種吧

1.用第三方的瀏覽器控件(這個好似比較方便,我的老師也是這樣建議我)向大家推薦一個 Lodop打印控件

2.用CSS寫好模板,然后直接用頁面打印的方法(應該是這樣吧)

以上兩種還沒有嘗試,這兩天陸續嘗試)

3.用微軟自己的ActiveX控件(ActiveX控件可以實現調用本地的文件等操作(之前試過調用cmd,實現shutdown -s -t,在網頁控制電腦的定時關機))

當然這種方法的缺點也很明顯:限操作系統-因為是微軟的東西只能Windows下,限瀏覽器-因為ActiveX也只能在IE瀏覽器下。所以局限性比較大

實現過程:

1.編輯『word小票模板』,要用到word中『書簽』這個工具(通過『書簽』的定位,js就可以操作word在『書簽』指定的位置進行 修改、寫入內容)

2.在js對word模板進行 打開、賦值、打印操作

一、編輯『word小票模板』

    1.以word2007為例,首先排好大致的樣式

ActiveX控件的使用-js實現打印超市小票功能代碼詳解

二、js

直接上源代碼吧:

<input type="button" value="toPrinter " onclick="viewToWord();" /> 
- Hide code
function viewToWord() {
    //當前時間
    var Time;
    var today = new Date();
    Time = today.toLocaleString();
    
    try { 
      // 創建ActiveXObject對象 
      wdapp = new ActiveXObject("Word.Application"); 
    } 
    catch (e) { 
      console.log("無法調用Office對象,!", e) 
      wdapp = null; 
      return; 
    }
    wdapp.Documents.Open("f:\\PrinterTemplate1.doc"); //打開本地(客戶端)word模板
    wddoc = wdapp.ActiveDocument; 
    wddoc.Bookmarks("OrderNum").Range.Text = "201509080959" + "\n";
    wddoc.Bookmarks("OrderName").Range.Text = "鄭斌" + "\n"; 
    wddoc.Bookmarks("OrderAddress").Range.Text = "www.cnblogs.com/zhengbin" + "\n";
    wddoc.Bookmarks("OrderPhoneNum").Range.Text = "QQ:1746788394" + "\n";
    wddoc.Bookmarks("OrderDaocanTime").Range.Text = "10:00-11:00" + "\n";
    wddoc.Bookmarks("OrderTime").Range.Text = "09-08 10:15";
    //添加表格
    var myTable = wddoc.Tables.Add (wddoc.Bookmarks("OrderCart").Range,3,3);//(賦值區域,行數,列數)
    //隱藏邊框
    var table=wdapp.ActiveDocument.Tables(1);
    table.Borders(-1).LineStyle=0;
    table.Borders(-2).LineStyle=0;
    table.Borders(-3).LineStyle=0;
    table.Borders(-4).LineStyle=0;
    table.Borders(-5).LineStyle=0;
    table.Borders(-6).LineStyle=0;
    for(i=1;i<=3;i++){//行
      //第一列
      with (myTable.Cell(i,1).Range){
        font.Size = 8;//調整字體大小
        InsertAfter("博客園"+i);//插入的內容
      }
      //第二列
      with(myTable.Cell(i,2).Range){
        font.Size = 8;
        InsertAfter(i);
        ParagraphFormat.Alignment=1;//表格內容對齊:0-左對齊 1-居中 2-右對齊
      }
      //第三列
      with(myTable.Cell(i,3).Range){
        font.Size = 8;
        InsertAfter("無價");
        ParagraphFormat.Alignment=2;
      }
    }
    wddoc.saveAs("f:\\PrinterTemp_cnblogs.doc"); //保存臨時文件word
    wddoc.Bookmarks("TotalPrice").Range.Text = "無價" + "\n";
    wddoc.Bookmarks("Time").Range.Text = Time; 
    //wdapp.ActiveDocument.ActiveWindow.View.Type = 1;
    wdapp.visible = false; //word模板是否可見 
    wdapp.Application.Printout(); //調用自動打印功能 
    wdapp.quit();
    wdapp = null; 
  }

最后:

ActiveX控件的使用-js實現打印超市小票功能代碼詳解

注意:

首先要調整好IE瀏覽器的 Internet選項-自定義級別(右邊『ActiveX控件和插件』下,能啟用的都啟用)

ActiveX控件的使用-js實現打印超市小票功能代碼詳解

『打印機脫機工作』一般是usb沒有插好,換插口,重啟打印機即可

有關ActiveX控件,簡單介紹下:ActiveX是Microsoft對于一系列策略性面向對象程序技術和工具的稱呼,其中主要的技術是組件對象模型(COM)。在有目錄和其它支持的網絡中,COM變成了分布式COM(DCOM)。ActiveX 控件是用于互聯網的很小的程序,有時稱為插件程序。它們會允許播放動畫,或幫助執行任務,如在 Microsoft Update 安裝安全更新,因此可以增強您的瀏覽體驗。下面附本站免費下載地址:

OCX控件 [activex控件] 中文版

js之ActiveX控件使用說明 new ActiveXObject()

總結

以上就是本文關于ActiveX控件的使用-js實現打印超市小票功能代碼詳解的全部內容,希望對大家有所幫助。如有問題可以隨時留言指出,感謝朋友們對本站的支持!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

五莲县| 盐城市| 于田县| 永川市| 寿阳县| 黔南| 嘉鱼县| 麻栗坡县| 大冶市| 慈溪市| 东海县| 伊宁县| 石首市| 鄂尔多斯市| 孟津县| 冀州市| 曲松县| 山东省| 五峰| 光泽县| 库车县| 汤原县| 邵阳县| 江城| 五寨县| 突泉县| 始兴县| 庄浪县| 交城县| 吉水县| 安阳县| 叶城县| 漠河县| 小金县| 凤山市| 许昌市| 遵义市| 疏勒县| 孝感市| 夏邑县| 宁津县|