|
老师,这个蓝牙插件是怎么用的呀,为什么我“查找并连接蓝牙”后点击“发送蓝牙信息”,却提示未连接到蓝牙设备,不是因该已连上了吗?
我感觉是没有连上,如果连上的话在我手机里的蓝牙设置页面中应该可以看到iblue3A蓝牙设备已连接,但我测试后实际没有显示已连接。
-----------------------------以下是我的完整测试代码,老师帮看看是不是少了什么代码呢 ,下面的代码我是从官网上复制过来测试的。 ---------------------------------
using System;
using System.Collections.Generic;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using Smobiler.Core;
using Smobiler.Core.Controls;
namespace 控件测试
{
partial class frmRTypeTemplate : Smobiler.Core.Controls.MobileForm
{
public frmRTypeTemplate() : base()
{
InitializeComponent();
this.Load += SmobilerForm1_Load;
}
private void SmobilerForm1_Load(object sender, EventArgs e)
{
timer1.Start();
button4_Press(null, null);//获取蓝牙连接状态
}
private void title1_ImagePress(object sender, EventArgs e)
{
this.Close();
}
//关闭蓝牙
private void button1_Press(object sender, EventArgs e)
{
bluetooth1.Close((abj, args) =>
{
if (args.isError == true)
Toast(args.error);
else
Toast("success");
});
}
//断开连接上的蓝牙设备
private void button2_Press(object sender, EventArgs e)
{
bluetooth1.CloseConnect((abj, args) =>
{
if (args.isError == true)
Toast(args.error);
else
Toast("success");
});
}
//连接指定蓝牙
private void button3_Press(object sender, EventArgs e)
{
//bluetooth1.Connect("00:0D:18:00:19:98", (abj, args) =>
//{
// if (args.isError == true)
// Toast(args.error);
// else
// Toast("success");
//});
bluetooth1.Connect("00:23:02:31:E7:06", (abj, args) =>
{
if (args.isError == true)
Toast(args.error);
else
Toast("success");
});
}
//获取蓝牙连接状态
private void button4_Press(object sender, EventArgs e)
{
bluetooth1.GetStatus((abj, args) =>
{
if (args.isError == true)
Toast(args.error);
else
{
Toast(args.Status + " " + args.Name + " " + args.MacAddress);
MessageBox.Show(args.Status + " " + args.Name + " " + args.MacAddress);
}
});
}
//打开蓝牙
private void button5_Press(object sender, EventArgs e)
{
bluetooth1.Open((abj, args) =>
{
if (args.isError == true)
Toast(args.error);
else
Toast("success");
});
}
//查找并连接蓝牙
private void button6_Press(object sender, EventArgs e)
{
bluetooth1.Search((abj, args) =>
{
if (args.isError == true)
Toast(args.error);
else
{
Toast("success " + args.Name + " " + args.MacAddress);
MessageBox.Show(args.Name + " " + args.MacAddress);
}
});
}
//发送蓝牙信息
private void button7_Press(object sender, EventArgs e)
{
//发送的TSPL指令
string str = "690000001";
string print = "SIZE 80 mm,40 mm\r\n" + "REFERENCE 0,0\r\n" + "SPEED 4.0\r\n" + "DENSITY 8\r\n" + "SET PEEL OFF\r\n" + "SET CUTTER OFF\r\n" + "SET TEAR ON\r\n" + "DIRECTION 0\r\n" + "SHIFT 0\r\n" + "OFFSET 0 mm\r\n" + "CLS\r\n" + "BARCODE 20,20,\"128M\",160,1,0,4,12,\"" + str + "\"\r\n" + "TEXT 20,190,\"ARIAL.TTF\",0,15,15,\"" + str + "\"\n" + " RINT 3,1\r\n";
string print1 = "SIZE 50 mm,80 mm\r\n" + "GAP 2 mm,0 mm\r\n" + "TEXT 30,0,\"TST24.BF2 \",0,1,1,\"" + "Smobiler" + "\n" + "TEXT 30,60,\"ROMAN.TTF \",0,1,1,\"" + "110mm×300m" + "\r\n" + "TEXT 30,120,\"TST24.BF2 \",0,1,1,\"" + "石磨" + "\r\n" + "TEXT 30,180,\"ROMAN.TTF \",0,1,1,\"" + "上海石磨信息科技有限公司" + "\r\n" + "TEXT 30,240,\"ROMAN.TTF \",0,1,1,\"" + "Smobiler" + "\r\n" + "REFERENCE 0,0\r\n" + "SPEED 4.0\r\n" + "DENSITY 8\r\n" +
"SET PEEL OFF\r\n" + "SET CUTTER OFF\r\n" + "SET TEAR ON\r\n" + "DIRECTION 0\r\n" + "SHIFT 0\r\n" + "OFFSET 0 mm\r\n" + "CLS\r\n" + "QRCODE 350,0,H,4,A,0,M6,S7,\"" + str + "\"\r\n" + "TEXT 350,240,\"TSS24.BF2 \",0,1,1,\"" + "页数 1" + "\n" + " RINT 1,1\r\n";
bluetooth1.WriteData(System.Text.Encoding.GetEncoding("gbk").GetBytes(print1), (abj, args) =>
{
if (args.isError == true)
Toast(args.error);
else
Toast("success");
});
}
/// <summary>
/// 接收蓝牙后发生
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void bluetooth1_DataReceived(object sender, Smobiler.Plugins.BluetoothDataReceivedEventArgs e)
{
Toast(e.Data.ToString());
MessageBox.Show(System.Text.Encoding.GetEncoding("gbk").GetString(e.Data));
}
private void timer1_Tick(object sender, EventArgs e)
{
label1.Text = bluetooth1.BluetoothStatus.ToString();
}
}
}
|
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
|