在很多應(yīng)用程序,特別是工控程序中,經(jīng)常需要讀入并顯示一些開關(guān)量,比如串口通信是否正常,電源是否打開,電機(jī)工作是否正常等等。這些開關(guān)量的顯示最好用一些控件來實(shí)現(xiàn)。這些控件根據(jù)輸入的開關(guān)量顯示不同顏色和文字用來表示打開和關(guān)閉。NI公司專門開發(fā)了一套LabWindows控件,專門用于程序開發(fā),當(dāng)然這是要花錢的.本文以CStatic為基類,編寫了一個(gè)LED燈,它可根據(jù)輸入的bool值顯示開關(guān),類似于vb里的shape控件。
NI控件
具體實(shí)現(xiàn)請(qǐng)請(qǐng)參考CLED類,當(dāng)然這個(gè)類很簡(jiǎn)單,完全可以自己實(shí)現(xiàn),當(dāng)時(shí)如過你不想自己動(dòng)手編寫,那么可以發(fā)郵件向我要:visualsan@yahoo.cn.也可以直接復(fù)制文章低部的類的頭文件和cpp文件。下面是程序運(yùn)行時(shí)的截圖:
//類頭文件
#if!defined(AFX[_]LED[_]H[_][_]BDAD9442[_]11BB[_]4917[_]8E43[_]0E2ACC246FE3[_][_]INCLUDED[_])
#define AFX[_]LED[_]H[_][_]BDAD9442[_]11BB[_]4917[_]8E43[_]0E2ACC246FE3[_][_]INCLUDED[_]
#if [_]MSC[_]VER 1000
#pragma once
#endif//[_]MSC[_]VER 1000
//LED.h:header file
//
#define CIRCLE 0
#define SQUARE 1
#define ELLIPSE 2
/////////////////////////////////////////////////////////////////////////////
//CLED window class CLED:public CStatic
{
//Construction public:
CLED();