Commit 457b6bbb 刘韬

1

1 个父辈 6a65fcff
...@@ -9,7 +9,7 @@ ...@@ -9,7 +9,7 @@
<AppDesignerFolder>Properties</AppDesignerFolder> <AppDesignerFolder>Properties</AppDesignerFolder>
<RootNamespace>OnlineStore.Common</RootNamespace> <RootNamespace>OnlineStore.Common</RootNamespace>
<AssemblyName>MyCommon</AssemblyName> <AssemblyName>MyCommon</AssemblyName>
<TargetFrameworkVersion>v4.6.1</TargetFrameworkVersion> <TargetFrameworkVersion>v4.6.2</TargetFrameworkVersion>
<FileAlignment>512</FileAlignment> <FileAlignment>512</FileAlignment>
<TargetFrameworkProfile /> <TargetFrameworkProfile />
</PropertyGroup> </PropertyGroup>
......
...@@ -85,6 +85,7 @@ namespace OnlineStore.Common ...@@ -85,6 +85,7 @@ namespace OnlineStore.Common
public static MyConfig<int> Runtime_PlateW; public static MyConfig<int> Runtime_PlateW;
public static MyConfig<int> Runtime_PlateH; public static MyConfig<int> Runtime_PlateH;
public static MyConfig<string> Runtime_PlateInFix; public static MyConfig<string> Runtime_PlateInFix;
public static MyConfig<bool> Runtime_IsNg;
public static MyConfig<string> Runtime_NgMsg;
} }
} }
...@@ -9,7 +9,7 @@ ...@@ -9,7 +9,7 @@
<AppDesignerFolder>Properties</AppDesignerFolder> <AppDesignerFolder>Properties</AppDesignerFolder>
<RootNamespace>DeviceLibrary</RootNamespace> <RootNamespace>DeviceLibrary</RootNamespace>
<AssemblyName>DeviceLibrary</AssemblyName> <AssemblyName>DeviceLibrary</AssemblyName>
<TargetFrameworkVersion>v4.6.1</TargetFrameworkVersion> <TargetFrameworkVersion>v4.6.2</TargetFrameworkVersion>
<FileAlignment>512</FileAlignment> <FileAlignment>512</FileAlignment>
<Deterministic>true</Deterministic> <Deterministic>true</Deterministic>
<TargetFrameworkProfile /> <TargetFrameworkProfile />
...@@ -132,6 +132,9 @@ ...@@ -132,6 +132,9 @@
<Compile Include="userControl\FixtureSizeConfigControl.Designer.cs"> <Compile Include="userControl\FixtureSizeConfigControl.Designer.cs">
<DependentUpon>FixtureSizeConfigControl.cs</DependentUpon> <DependentUpon>FixtureSizeConfigControl.cs</DependentUpon>
</Compile> </Compile>
<Compile Include="userControl\ToucDownBtn.cs">
<SubType>Component</SubType>
</Compile>
</ItemGroup> </ItemGroup>
<ItemGroup> <ItemGroup>
<EmbeddedResource Include="userControl\AxisMoveControl.resx"> <EmbeddedResource Include="userControl\AxisMoveControl.resx">
......
...@@ -77,16 +77,34 @@ namespace DeviceLibrary ...@@ -77,16 +77,34 @@ namespace DeviceLibrary
//serverConnectTimer.Enabled = false; //serverConnectTimer.Enabled = false;
} }
public void ProcessMsg(List<Msg> msg) { public void ProcessMsg(List<Msg> msg)
WarnMsg = string.Join(",", msg.Select(x => {
if (msg == null)
return;
WarnMsg = string.Join("\r\n", msg.Select(x =>
{ {
if (x.msgLevel == MsgLevel.warning || x.msgLevel == MsgLevel.alarm) if (x.msgLevel == MsgLevel.warning || x.msgLevel == MsgLevel.alarm)
{ {
return x.msgtxt; return GetMsgPrefix(x.msgLevel) + x.msgtxt;
} }
return null; return null;
} }
).Where(x=>!string.IsNullOrEmpty(x))); ).Where(x => !string.IsNullOrEmpty(x)));
}
string GetMsgPrefix(MsgLevel msgLevel)
{
switch (msgLevel)
{
case MsgLevel.info:
return "I=";
case MsgLevel.warning:
return "W=";
case MsgLevel.alarm:
return "A=";
}
return "";
} }
public void SendInStoreRequest(string[] codelist, ReelParam reel, bool printlog = false) public void SendInStoreRequest(string[] codelist, ReelParam reel, bool printlog = false)
{ {
...@@ -378,6 +396,10 @@ namespace DeviceLibrary ...@@ -378,6 +396,10 @@ namespace DeviceLibrary
if (plateH > 56) if (plateH > 56)
plateH = 56; plateH = 56;
else if (plateH == 0) {
plateH = position.BagHigh;
plateW = position.BagWidth;
}
JobInfo inStoreJob = new JobInfo(message, posId, plateW, plateH); JobInfo inStoreJob = new JobInfo(message, posId, plateW, plateH);
if (InStoreEvent.Invoke(inStoreJob, false, "")) if (InStoreEvent.Invoke(inStoreJob, false, ""))
{ {
...@@ -474,7 +496,16 @@ namespace DeviceLibrary ...@@ -474,7 +496,16 @@ namespace DeviceLibrary
} }
else else
{ {
var ngReel = false;
var ngMsg = "";
if (data.ContainsKey("ngReel") && data["ngReel"].ToLower() == "true")
{
ngReel = true;
data.TryGetValue("ngMsg", out ngMsg);
}
JobInfo outStoreJob = new JobInfo(code, posId, plateW, plateH); JobInfo outStoreJob = new JobInfo(code, posId, plateW, plateH);
outStoreJob.isNG = ngReel;
outStoreJob.NgMsg = ngMsg;
OutStoreEvent.Invoke(outStoreJob); OutStoreEvent.Invoke(outStoreJob);
} }
} }
...@@ -554,6 +585,47 @@ namespace DeviceLibrary ...@@ -554,6 +585,47 @@ namespace DeviceLibrary
} }
return msg; return msg;
} }
public bool tryposQuery(string posId, string barcode) {
for (int i = 0; i < 3; i++) {
var r= posQuery(posId, barcode);
if (r.HasValue)
return r.Value;
}
return true;
}
bool? posQuery(string posId, string barcode)
{
try
{
Dictionary<string, string> paramMap = new Dictionary<string, string>
{
{ "posName", posId },
{ "barcode", barcode }
};
string server = GetAddr("/service/store/posQuery", paramMap);
DateTime startTime = DateTime.Now;
string resultStr = HttpHelper.Post(server, "",1000);
LogUtil.info("posQuery:" + FormUtil.GetSpanStr(DateTime.Now - startTime) + " 【" + server + "】【" + resultStr + "】");
ResultData data = JsonHelper.DeserializeJsonToObject<ResultData>(resultStr);
if (data == null)
{
return null;
}
else if (data.code==0)
{
return true;
}else
return false;
}
catch (Exception ex)
{
LogUtil.error("DisabledPos: " + ex.ToString());
return null;
}
}
private static string GetAddr(string addr, Dictionary<string, string> paramsMap) private static string GetAddr(string addr, Dictionary<string, string> paramsMap)
{ {
if (server.EndsWith("/")) if (server.EndsWith("/"))
......
...@@ -102,10 +102,12 @@ namespace DeviceLibrary ...@@ -102,10 +102,12 @@ namespace DeviceLibrary
/// 料盘高 /// 料盘高
/// </summary> /// </summary>
public int plateH { get; set; } public int plateH { get; set; }
public bool isNG { get; set; }
public string NgMsg { get; set; }
public string ToStr() public string ToStr()
{ {
return "TrayCode【" + TrayCode + "】,WareNum=【" + WareNum + "】,PosId=【" + PosId + "】,plateW=【" + plateW + "】,plateH=【" + plateH + "】"; return "TrayCode【" + TrayCode + "】,WareNum=【" + WareNum + "】,PosId=【" + PosId + "】,plateW=【" + plateW + "】,plateH=【" + plateH + "】,isng=【" + isNG + "】,nsmsg=【" + NgMsg + "】";
} }
} }
......
using CodeLibrary; using CodeLibrary;
using OnlineStore; using OnlineStore;
using OnlineStore.Common; using OnlineStore.Common;
using OnlineStore.LoadCSVLibrary; using OnlineStore.LoadCSVLibrary;
...@@ -31,10 +31,10 @@ namespace DeviceLibrary ...@@ -31,10 +31,10 @@ namespace DeviceLibrary
var humiNeedStop = Current_Humidity < ServerCM.Max_Humidity - Setting_Init.Device_HumidityEndOffser; var humiNeedStop = Current_Humidity < ServerCM.Max_Humidity - Setting_Init.Device_HumidityEndOffser;
if (Current_Humidity <= ServerCM.Max_Humidity) if (Current_Humidity <= ServerCM.Max_Humidity)
LastHumiCheckTime = DateTime.Now; LastHumiCheckTime = DateTime.Now;
//else if ((DateTime.Now - LastHumiCheckTime).TotalSeconds > 30) else if ((DateTime.Now - LastHumiCheckTime).TotalSeconds > 30)
//{ {
// Msg.add("温湿度超限", MsgLevel.alarm); Msg.add(crc.GetString("Res0073.70dccffd","温湿度超限"), MsgLevel.alarm);
//} }
if (humiNeedStart && IOValue(IO_Type.StartOrStopBlow).Equals(IO_VALUE.LOW)) if (humiNeedStart && IOValue(IO_Type.StartOrStopBlow).Equals(IO_VALUE.LOW))
{ {
...@@ -48,4 +48,4 @@ namespace DeviceLibrary ...@@ -48,4 +48,4 @@ namespace DeviceLibrary
} }
} }
} }
} }
\ No newline at end of file \ No newline at end of file
...@@ -83,8 +83,8 @@ namespace DeviceLibrary ...@@ -83,8 +83,8 @@ namespace DeviceLibrary
MachineLedStateName[MachineLedStateE.SystemPause] = crc.GetString("Res0009","暂停"); MachineLedStateName[MachineLedStateE.SystemPause] = crc.GetString("Res0009","暂停");
MachineLedState.Add(MachineLedStateE.SystemPause, nls(LedState.blink, LedState.off, LedState.blink)); MachineLedState.Add(MachineLedStateE.SystemPause, nls(LedState.blink, LedState.off, LedState.blink));
//温湿度超限 绿闪黄闪 //温湿度超限 绿闪黄闪
//MachineLedStateName[MachineLedStateE.THoutRangeOver30m] = "温湿度超限"; MachineLedStateName[MachineLedStateE.THoutRangeOver30m] = crc.GetString("Res0073.70dccffd","温湿度超限");
//MachineLedState.Add(MachineLedStateE.THoutRangeOver30m, nls(LedState.none, LedState.blink, LedState.blink)); MachineLedState.Add(MachineLedStateE.THoutRangeOver30m, nls(LedState.none, LedState.blink, LedState.blink));
//进出库, 绿亮,黄闪 //进出库, 绿亮,黄闪
MachineLedStateName[MachineLedStateE.InOut] = crc.GetString("Res0010","出入库中"); MachineLedStateName[MachineLedStateE.InOut] = crc.GetString("Res0010","出入库中");
MachineLedState.Add(MachineLedStateE.InOut, nls(LedState.none, LedState.blink, LedState.on)); MachineLedState.Add(MachineLedStateE.InOut, nls(LedState.none, LedState.blink, LedState.on));
...@@ -128,7 +128,6 @@ namespace DeviceLibrary ...@@ -128,7 +128,6 @@ namespace DeviceLibrary
else if (runStatus == RunStatus.Running) else if (runStatus == RunStatus.Running)
{ {
ProcessLefCfg(MachineLedStateE.Running); ProcessLefCfg(MachineLedStateE.Running);
//出入库 绿闪 黄闪 //出入库 绿闪 黄闪
if ( StoreMoveInfo.MoveStep > MoveStep.Wait) if ( StoreMoveInfo.MoveStep > MoveStep.Wait)
{ {
...@@ -145,7 +144,7 @@ namespace DeviceLibrary ...@@ -145,7 +144,7 @@ namespace DeviceLibrary
} }
if((DateTime.Now - LastHumiCheckTime).TotalSeconds > 30) if((DateTime.Now - LastHumiCheckTime).TotalSeconds > 30)
{ {
//ProcessLefCfg(MachineLedStateE.THoutRangeOver30m); ProcessLefCfg(MachineLedStateE.THoutRangeOver30m);
} }
} }
else if (runStatus == RunStatus.Stop) else if (runStatus == RunStatus.Stop)
...@@ -231,7 +230,7 @@ namespace DeviceLibrary ...@@ -231,7 +230,7 @@ namespace DeviceLibrary
HomeReset, HomeReset,
Running, Running,
SystemPause, SystemPause,
//THoutRangeOver30m, THoutRangeOver30m,
//THoutRange, //THoutRange,
InOut, InOut,
} }
......
...@@ -394,6 +394,8 @@ namespace DeviceLibrary ...@@ -394,6 +394,8 @@ namespace DeviceLibrary
StoreMoveInfo.MoveParam.PlateH = Setting_Init.Runtime_PlateH; StoreMoveInfo.MoveParam.PlateH = Setting_Init.Runtime_PlateH;
StoreMoveInfo.MoveParam.PlateW = Setting_Init.Runtime_PlateW; StoreMoveInfo.MoveParam.PlateW = Setting_Init.Runtime_PlateW;
StoreMoveInfo.MoveParam.WareCode = Setting_Init.Runtime_WareCode; StoreMoveInfo.MoveParam.WareCode = Setting_Init.Runtime_WareCode;
StoreMoveInfo.MoveParam.IsNg = Setting_Init.Runtime_IsNg;
StoreMoveInfo.MoveParam.NgMsg = Setting_Init.Runtime_NgMsg;
if (Setting_Init.Runtime_IsInStore) if (Setting_Init.Runtime_IsInStore)
{ {
ResetMoveInfo.log("入库物料:" + StoreMoveInfo.MoveParam.ToStr()); ResetMoveInfo.log("入库物料:" + StoreMoveInfo.MoveParam.ToStr());
...@@ -488,8 +490,9 @@ namespace DeviceLibrary ...@@ -488,8 +490,9 @@ namespace DeviceLibrary
{ {
ok = false; ok = false;
DeviceSuddenStop(); DeviceSuddenStop();
UserPause = true;
} }
Msg.add(crc.GetString("Res0015","后侧防护门没有关闭") + (ok ? ignorestring : ""), MsgLevel.warning); Msg.add(crc.GetString("Res0015","后侧防护门没有关闭") + (ok ? ignorestring : ""), MsgLevel.alarm);
} }
if (!lastSafeCheckStatus && ok) if (!lastSafeCheckStatus && ok)
{ {
......
...@@ -6,7 +6,10 @@ using RemoteSheardObject; ...@@ -6,7 +6,10 @@ using RemoteSheardObject;
using System; using System;
using System.Collections.Generic; using System.Collections.Generic;
using System.Drawing; using System.Drawing;
using System.Drawing.Drawing2D;
using System.IO;
using System.Linq; using System.Linq;
using System.Security.Cryptography;
using System.Text; using System.Text;
using System.Threading.Tasks; using System.Threading.Tasks;
...@@ -122,12 +125,16 @@ namespace DeviceLibrary ...@@ -122,12 +125,16 @@ namespace DeviceLibrary
StoreMoveInfo.MoveParam.PosID = jobInfo.PosId; StoreMoveInfo.MoveParam.PosID = jobInfo.PosId;
StoreMoveInfo.MoveParam.PlateH = jobInfo.plateH; StoreMoveInfo.MoveParam.PlateH = jobInfo.plateH;
StoreMoveInfo.MoveParam.PlateW = jobInfo.plateW; StoreMoveInfo.MoveParam.PlateW = jobInfo.plateW;
StoreMoveInfo.MoveParam.IsNg = jobInfo.isNG;
StoreMoveInfo.MoveParam.NgMsg = jobInfo.NgMsg;
Setting_Init.Runtime_IsInStore = false; Setting_Init.Runtime_IsInStore = false;
Setting_Init.Runtime_PosID = StoreMoveInfo.MoveParam.PosID; Setting_Init.Runtime_PosID = StoreMoveInfo.MoveParam.PosID;
Setting_Init.Runtime_PlateH = StoreMoveInfo.MoveParam.PlateH; Setting_Init.Runtime_PlateH = StoreMoveInfo.MoveParam.PlateH;
Setting_Init.Runtime_PlateW = StoreMoveInfo.MoveParam.PlateW; Setting_Init.Runtime_PlateW = StoreMoveInfo.MoveParam.PlateW;
Setting_Init.Runtime_WareCode = StoreMoveInfo.MoveParam.WareCode; Setting_Init.Runtime_WareCode = StoreMoveInfo.MoveParam.WareCode;
Setting_Init.Runtime_IsNg = StoreMoveInfo.MoveParam.IsNg;
Setting_Init.Runtime_NgMsg = StoreMoveInfo.MoveParam.NgMsg;
StoreMoveInfo.log($"开始出库任务:" + jobInfo.ToStr()); StoreMoveInfo.log($"开始出库任务:" + jobInfo.ToStr());
ServerCM.storeStatus = StoreStatus.OutStoreExecute; ServerCM.storeStatus = StoreStatus.OutStoreExecute;
return; return;
...@@ -185,8 +192,11 @@ namespace DeviceLibrary ...@@ -185,8 +192,11 @@ namespace DeviceLibrary
{ {
if (!ServerCM.SendStoreState(StoreMoveInfo.MoveParam.PosID, StoreStatus.InStoreEnd)) if (!ServerCM.SendStoreState(StoreMoveInfo.MoveParam.PosID, StoreStatus.InStoreEnd))
{ {
Msg.add(crc.GetString("Res0156", "服务器连接异常"), MsgLevel.warning); StoreMoveInfo.CanWhileCount--;
return; ///Msg.add(crc.GetString("Res0156", "服务器连接异常"), MsgLevel.warning);
if (StoreMoveInfo.CanWhileCount>0)
return;
StoreMoveInfo.log($"服务器连接异常");
} }
StoreMoveInfo.log($"料盘已到达目的地"); StoreMoveInfo.log($"料盘已到达目的地");
StoreMoveInfo.NextMoveStep(MoveStep.StoreIn05); StoreMoveInfo.NextMoveStep(MoveStep.StoreIn05);
...@@ -199,9 +209,20 @@ namespace DeviceLibrary ...@@ -199,9 +209,20 @@ namespace DeviceLibrary
case MoveStep.StoreIn05: case MoveStep.StoreIn05:
if (boxTransport.IsComplateOrFree) if (boxTransport.IsComplateOrFree)
{ {
SRec.info(CID, "", crc.GetString("Res0020","完成入库"), StoreMoveInfo.MoveParam.PosID); SRec.info(CID, "", crc.GetString("Res0020", "完成入库"), StoreMoveInfo.MoveParam.PosID);
StoreMoveInfo.log($"料盘已到达目的地"); StoreMoveInfo.log($"料盘已到达目的地");
if (!ServerCM.tryposQuery(StoreMoveInfo.MoveParam.PosID,""))
{
StoreMoveInfo.log($"无法确认入库成功NG处理");
JobInfo jobInfo = new JobInfo(StoreMoveInfo.MoveParam.WareCode, StoreMoveInfo.MoveParam.PosID, StoreMoveInfo.MoveParam.PlateW, StoreMoveInfo.MoveParam.PlateH);
jobInfo.isNG=true;
jobInfo.NgMsg= "Inbound confirmation failed.";
OutStoreJobList.Enqueue(jobInfo);
}
StoreMoveInfo.EndMove(); StoreMoveInfo.EndMove();
OutStoreJobList.ClearLastPosid(StoreMoveInfo.MoveParam.PosID); OutStoreJobList.ClearLastPosid(StoreMoveInfo.MoveParam.PosID);
} }
......
using OnlineStore.Common; using OnlineStore;
using OnlineStore.Common;
using OnlineStore.LoadCSVLibrary; using OnlineStore.LoadCSVLibrary;
using System; using System;
using System.Collections.Generic; using System.Collections.Generic;
...@@ -236,40 +237,36 @@ namespace DeviceLibrary ...@@ -236,40 +237,36 @@ namespace DeviceLibrary
{ {
if (IsHomeMove) if (IsHomeMove)
{ {
return "轴【" + AxisInfo.DisplayStr + "】原点返回"; return crc.GetString("Res0074.60c85b4b","轴") + "【" + AxisInfo.DisplayStr + "】" + crc.GetString("AxisMoveControl_groupAxis_panel1_btnAxisReturnHome_Text","原点返回");
} }
else else
{ {
return "轴【" + AxisInfo.DisplayStr + "】绝对运动,目标位置【" + TargetPosition + "】"; return crc.GetString("Res0074.60c85b4b","轴") + "【" + AxisInfo.DisplayStr + "】" + crc.GetString("Res0075.0c33436f","绝对运动,目标位置") + "【" + TargetPosition + "】";
} }
} }
else if (WaitType.Equals(WaitEnum.W002_IOValue)) else if (WaitType.Equals(WaitEnum.W002_IOValue))
{ {
return "等待【" + IoType + "】=【" + IoValue + "】"; return crc.GetString("Res0076.87979227","等待") + "【" + IoType + "】=【" + IoValue + "】";
} }
else if (WaitType.Equals(WaitEnum.W003_Time)) else if (WaitType.Equals(WaitEnum.W003_Time))
{ {
return "时间等待:【" + TimeMSeconds + "】毫秒"; return crc.GetString("Res0077.d7647f48","时间等待") + ":【" + TimeMSeconds + "】" + crc.GetString("Res0078.21157cbf","毫秒");
}
else if (WaitType.Equals(WaitEnum.W005_ShuoKe))
{
return "硕科电机目标位置:【" + TargetPosition + "】 ";
} }
else if (WaitType.Equals(WaitEnum.W006_AxisOrg)) else if (WaitType.Equals(WaitEnum.W006_AxisOrg))
{ {
return "轴【" + AxisInfo.DisplayStr + "】ORG信号:【" + IoValue + "】 "; return crc.GetString("Res0074.60c85b4b","轴") + "【" + AxisInfo.DisplayStr + "】" + crc.GetString("Res0079.3802ba42","ORG信号") + ":【" + IoValue + "】";
} }
else if (WaitType.Equals(WaitEnum.W007_ReelHeight)) else if (WaitType.Equals(WaitEnum.W007_ReelHeight))
{ {
return "料盘高度【" + TargetPosition + "】 "; return crc.GetString("Res0080.f4a8d691","料盘高度") + "【" + TargetPosition + "】";
} }
else if (WaitType.Equals(WaitEnum.W008_BatchAxis)) else if (WaitType.Equals(WaitEnum.W008_BatchAxis))
{ {
return "批量轴上升到上料点"; return crc.GetString("Res0081.84e7c741","批量轴上升到上料点");
} }
else if (WaitType.Equals(WaitEnum.W009_ScanCode)) else if (WaitType.Equals(WaitEnum.W009_ScanCode))
{ {
return "扫码完成"; return crc.GetString("Res0082.ed4de1c6","扫码完成");
} }
else if (WaitType.Equals(WaitEnum.W013_Action)) else if (WaitType.Equals(WaitEnum.W013_Action))
{ {
...@@ -277,7 +274,7 @@ namespace DeviceLibrary ...@@ -277,7 +274,7 @@ namespace DeviceLibrary
} }
else else
{ {
return "Wait位置类型:WaitType=【" + WaitType + "】"; return "WaitType=【" + WaitType + "】";
} }
} }
/// <summary> /// <summary>
...@@ -406,4 +403,4 @@ namespace DeviceLibrary ...@@ -406,4 +403,4 @@ namespace DeviceLibrary
///// </summary> ///// </summary>
//CheckFixture=6, //CheckFixture=6,
} }
} }
\ No newline at end of file \ No newline at end of file
...@@ -76,10 +76,10 @@ ...@@ -76,10 +76,10 @@
this.btnAxisStop = new System.Windows.Forms.Button(); this.btnAxisStop = new System.Windows.Forms.Button();
this.btnAxisReturnHome = new System.Windows.Forms.Button(); this.btnAxisReturnHome = new System.Windows.Forms.Button();
this.cmbAxis = new System.Windows.Forms.ComboBox(); this.cmbAxis = new System.Windows.Forms.ComboBox();
this.btnDelMove = new System.Windows.Forms.Button(); this.btnDelMove = new ToucDownBtn();
this.btnOpenAxis = new System.Windows.Forms.Button(); this.btnOpenAxis = new System.Windows.Forms.Button();
this.btnCloseAxis = new System.Windows.Forms.Button(); this.btnCloseAxis = new System.Windows.Forms.Button();
this.btnAddMove = new System.Windows.Forms.Button(); this.btnAddMove = new ToucDownBtn();
this.txtASpeed = new System.Windows.Forms.TextBox(); this.txtASpeed = new System.Windows.Forms.TextBox();
this.label1 = new System.Windows.Forms.Label(); this.label1 = new System.Windows.Forms.Label();
this.label47 = new System.Windows.Forms.Label(); this.label47 = new System.Windows.Forms.Label();
...@@ -952,8 +952,8 @@ ...@@ -952,8 +952,8 @@
private System.Windows.Forms.Panel panel1; private System.Windows.Forms.Panel panel1;
private System.Windows.Forms.Label label5; private System.Windows.Forms.Label label5;
private System.Windows.Forms.TextBox txtServoStatue; private System.Windows.Forms.TextBox txtServoStatue;
private System.Windows.Forms.Button btnDelMove; private ToucDownBtn btnDelMove;
private System.Windows.Forms.Button btnAddMove; private ToucDownBtn btnAddMove;
private System.Windows.Forms.Label label1; private System.Windows.Forms.Label label1;
private System.Windows.Forms.GroupBox groupBox1; private System.Windows.Forms.GroupBox groupBox1;
private System.Windows.Forms.ComboBox comjSpeed; private System.Windows.Forms.ComboBox comjSpeed;
......
using System;
using System.Collections.Generic;
using System.Linq;
using System.Security.Permissions;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
class ToucDownBtn : System.Windows.Forms.Button
{
public const int WM_POINTERDOWN = 0x246;
public const int WM_POINTERUP = 0x247;
[PermissionSet(SecurityAction.Demand, Name = "FullTrust")]
protected override void WndProc(ref Message m)
{
switch (m.Msg)
{
case WM_POINTERDOWN:
{
MouseEventArgs args = new MouseEventArgs(MouseButtons.Left, 1, 1, 1, 0);
OnMouseDown(args);
//Console.WriteLine("WM_POINTERDOWN");
break;
}
case WM_POINTERUP:
{
MouseEventArgs args = new MouseEventArgs(MouseButtons.Left, 1, 1, 1, 0);
OnMouseUp(args);
//Console.WriteLine("WM_POINTERUP");
break;
}
}
base.WndProc(ref m);
}
}
...@@ -9,7 +9,7 @@ ...@@ -9,7 +9,7 @@
<AppDesignerFolder>Properties</AppDesignerFolder> <AppDesignerFolder>Properties</AppDesignerFolder>
<RootNamespace>OnlineStore.LoadCSVLibrary</RootNamespace> <RootNamespace>OnlineStore.LoadCSVLibrary</RootNamespace>
<AssemblyName>LoadCSVLibrary</AssemblyName> <AssemblyName>LoadCSVLibrary</AssemblyName>
<TargetFrameworkVersion>v4.6.1</TargetFrameworkVersion> <TargetFrameworkVersion>v4.6.2</TargetFrameworkVersion>
<FileAlignment>512</FileAlignment> <FileAlignment>512</FileAlignment>
<TargetFrameworkProfile /> <TargetFrameworkProfile />
</PropertyGroup> </PropertyGroup>
......
...@@ -57,7 +57,7 @@ ...@@ -57,7 +57,7 @@
</root>--> </root>-->
</log4net> </log4net>
<startup> <startup>
<supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.6.1"/> <supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.6.2"/>
</startup> </startup>
<runtime> <runtime>
<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1"> <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
......
...@@ -19,7 +19,7 @@ namespace TheMachine.Properties { ...@@ -19,7 +19,7 @@ namespace TheMachine.Properties {
// 类通过类似于 ResGen 或 Visual Studio 的工具自动生成的。 // 类通过类似于 ResGen 或 Visual Studio 的工具自动生成的。
// 若要添加或移除成员,请编辑 .ResX 文件,然后重新运行 ResGen // 若要添加或移除成员,请编辑 .ResX 文件,然后重新运行 ResGen
// (以 /str 作为命令选项),或重新生成 VS 项目。 // (以 /str 作为命令选项),或重新生成 VS 项目。
[global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Resources.Tools.StronglyTypedResourceBuilder", "16.0.0.0")] [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Resources.Tools.StronglyTypedResourceBuilder", "17.0.0.0")]
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()] [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
[global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()] [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
internal class Resources { internal class Resources {
......
...@@ -12,7 +12,7 @@ namespace TheMachine.Properties { ...@@ -12,7 +12,7 @@ namespace TheMachine.Properties {
[global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()] [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
[global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.Editors.SettingsDesigner.SettingsSingleFileGenerator", "16.10.0.0")] [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.Editors.SettingsDesigner.SettingsSingleFileGenerator", "17.5.0.0")]
internal sealed partial class Settings : global::System.Configuration.ApplicationSettingsBase { internal sealed partial class Settings : global::System.Configuration.ApplicationSettingsBase {
private static Settings defaultInstance = ((Settings)(global::System.Configuration.ApplicationSettingsBase.Synchronized(new Settings()))); private static Settings defaultInstance = ((Settings)(global::System.Configuration.ApplicationSettingsBase.Synchronized(new Settings())));
......
...@@ -8,7 +8,7 @@ ...@@ -8,7 +8,7 @@
<OutputType>WinExe</OutputType> <OutputType>WinExe</OutputType>
<RootNamespace>TheMachine</RootNamespace> <RootNamespace>TheMachine</RootNamespace>
<AssemblyName>SBSH</AssemblyName> <AssemblyName>SBSH</AssemblyName>
<TargetFrameworkVersion>v4.6.1</TargetFrameworkVersion> <TargetFrameworkVersion>v4.6.2</TargetFrameworkVersion>
<FileAlignment>512</FileAlignment> <FileAlignment>512</FileAlignment>
<AutoGenerateBindingRedirects>true</AutoGenerateBindingRedirects> <AutoGenerateBindingRedirects>true</AutoGenerateBindingRedirects>
<Deterministic>false</Deterministic> <Deterministic>false</Deterministic>
......
支持 Markdown 格式
你添加了 0 到此讨论。请谨慎行事。
Finish editing this message first!