上位機學習技巧——c#(原創)
(一直更新…….)
一、掃描可用串口
方法一、
for循環,比如掃描範圍位串口1~串口20,則循環20遍,循環內容是打開串口;
使用 try{……}catch{ };
如果打開成功,就添加該控制項到下拉列表中,然後關閉串口;
如果打開不成功,會跳轉到到catch,但是catch不填東西,會跳過,繼續執行新一輪循環;
其實使用if()也可以實現。
方法二、
foreach (string s in SerialPort.GetPortNames()) //遍歷可用串口,並添加到comName控制項里
{
this.comName.Items.Add(s);
}
使用SerialPort.GetPortNames()方法直接獲取所有可用串口,
然後使用foreach遍歷添加到下拉列表中
二、捕獲滑鼠移到控制項(上升沿)/離開控制項(下降沿)
在窗體生成程式碼中,找到對應按鈕(這裡使用butten1)區域,在區域內添加兩個事件,分別是:
滑鼠移到控制項上:this.butten1.MouseHover += new System EvenHandler(this.button1_MouseHover) //這個this.button1_MouseHover是自定義一個方法,當滑鼠移到button1上,方法觸發
滑鼠離開控制項: this.butten1.MouseLeave += new System EvenHandler(this.button1_MouseLeave) //這個this.button1_MouseLeave是自定義一個方法,當滑鼠移開button1上,方法觸發
三、多個按鈕發送事件,添加同一發送方法
首先自己定義一個方法體buttonAll
然後在窗體程式碼設計介面,把該方法添加到每個button被按事件里(需要把原被按事件方法刪除掉,使用自定義事件方法代替它)
然後修改每個button的flg屬性,分別給他們貼上標籤,比如1,2,3,4
然後提取傳進來的sender(即被按的button本體)的flg屬性,因此可以區分button實現不一樣的事情
比如發送不一樣的字元串,把所有字元串存到一個數組裡面,然後發送flg值索引數組的元素,就可以實現不同的button發送不用的值