우선 답변을 줘서 감사합니다.
근데 제가 너무 초보라서 이해가 잘안되네요
텍스트박스 대신 리스트를 쓰라고 했는데, 리스트 박스를 말하는건지...
암튼 관련 소스입니다. 어케해야 할지..너무 난감하군요..도와주세요
Private Sub cmd_PUMP_2_auto_Click()
cmd_PUMP_2_auto.Visible = False
cmd_PUMP_2_manu.Visible = True
If (cmd_PUMP_2_auto.Visible = False) Or (cmd_PUMP_2_manu.Visible = True) Then
'cmd_PUMP_2_op.Enabled = True
' cmd_PUMP_2_cl.Enabled = True
lbl_PUMP_2_manu.BackColor = vbRed
lbl_PUMP_2_auto.BackColor = &H80000018
End If
MSComm1.Output = "수동모드"
'If cmd_PUMP_2_auto_Click Then
RxDataWindow.Text = ""
'RxDataWindow.Text = ""
'End If
End Sub
Private Sub cmd_PUMP_2_cl_Click()
'cmd_PUMP_2_auto.Visible = False
'RxDataWindow.Text = ""
'TxDataWindow.Text = ""
If MSComm1.Input = "수동모드" Then
RxDataWindow.Text = ""
RxStatus.Text = ""
End If
' cmd_PUMP_2_manu.Visible = False
End Sub
Private Sub cmd_PUMP_2_manu_Click()
cmd_PUMP_2_auto.Visible = True
cmd_PUMP_2_manu.Visible = False
If (cmd_PUMP_2_auto.Visible = True) Or (cmd_PUMP_2_manu.Visible = False) Then
'cmd_PUMP_2_op.Enabled = False
' cmd_PUMP_2_cl.Enabled = True
lbl_PUMP_2_auto.BackColor = vbRed
lbl_PUMP_2_manu.BackColor = &H80000018
End If '
MSComm1.Output = "자동모드"
'If RxDataWindow.Text = "수동모드" Then
RxDataWindow.Text = ""
' RxDataWindow.Text = "hide"
'End If
End Sub
'cmdChangeComParam Command Button을 마우스로 클릭하였을때 통신환경변수를
'통신환경변수를 설정하는 폼 ComParams이 디스플레이되며 사용자는 통신환경
'변수를 설정하고 통신포트를 초기화하는 프로시져
Private Sub cmdChangeComParam_click()
Form1.Visible = False
ComParams.Enabled = True
ComParams.Visible = True
'지정된 컨트롤이나 폼으로 포커스를 이동합니다.
'ComParams.SetFocus
'optCOM1_Click
'optBR96K.Enabled = True
'sComPort = "1"
'sBaudRate = "9600"
'sDataBits = "8"
'sParity = "N"
'sStopBits = "2"
'Form1.Show
End Sub
Private Sub Command1_Click()
'MSComm1.Output = "자동설정"
'MSComm1.Output = Chr$(49)
'MSComm1.Output = Chr$(62)
'MSComm1.Output = “1”
Move "\\한송이\공유\태와이\매\bb.frm"
bb.Show
'
'Close f
End Sub
Private Sub Command10_Click()
MSComm1.Output = Chr$(57)
End Sub
Private Sub Command11_Click()
MSComm1.Output = Chr$(58)
End Sub
Private Sub Command12_Click()
Dim f As Integer
Dim k As Integer
Dim MSg As String
f = FreeFile()
Open "\\한송이\공유\dd.txt" For Input As f
Do While Not EOF(f)
' Text1.Text = Input(LOF(f), f)
Line Input #f, MSg
'Print MSg
Text3.Text = MSg
'Text2.Text = MSg
myString = Text1.Text
mi1 = Mid(myString, 8, 6)
mi2 = Mid(myString, 14, 6)
MyValue1 = Val("&H" & mi1)
myvalue2 = Val("&H" & mi2)
a1 = Chr$(MyValue1)
a2 = Chr$(myvalue2)
MSComm1.Output = a1
' MSComm2.Output = a2
Call Delay(0.2)
Loop
Close f
k = FreeFile()
Open "\\한송이\공유\태와이\sj.txt" For Input As k
' Do While Not EOF(k)
Text4.Text = Input(LOF(k), k)
Close k
End Sub
Sub Delay(ByVal dTime!)
otime! = Timer
Do
'Debug.Print timer, dTime!, OTime!, STime!
If Timer < otime! Then otime! = otime! - 86400
stime! = Timer - otime!
DoEvents
Loop Until dTime! < stime!
End Sub
Private Sub Command2_Click()
MSComm1.Output = Chr$(49)
RxDataWindow.Text = ""
End Sub
Private Sub Command3_Click()
MSComm1.Output = Chr$(50)
RxDataWindow.Text = ""
End Sub
Private Sub Command4_Click()
MSComm1.Output = Chr$(51)
RxDataWindow.Text = ""
End Sub
Private Sub Command5_Click()
MSComm1.Output = Chr$(52)
RxDataWindow.Text = ""
End Sub
Private Sub Command6_Click()
MSComm1.Output = Chr$(53)
RxDataWindow.Text = ""
End Sub
Private Sub Command7_Click()
MSComm1.Output = Chr$(54)
RxDataWindow.Text = ""
End Sub
Private Sub Command8_Click()
MSComm1.Output = Chr$(55)
RxDataWindow.Text = ""
End Sub
Private Sub Command9_Click()
MSComm1.Output = Chr$(48)
RxDataWindow.Text = ""
End Sub
Private Sub Form_Load()
With Combo
.AddItem " "
.AddItem "자동"
.AddItem "반자동"
.AddItem "수동"
.AddItem "저압수동"
.ListIndex = 0
End With
sComPort = "1"
sBaudRate = "9600"
sDataBits = "8"
sParity = "N"
sStopBits = "2"
If MSComm1.PortOpen = True Then
MSComm1.PortOpen = False
End If
' If MSComm2.PortOpen = True Then
' MSComm1.PortOpen = False
' End If
End Sub
'송신 데이터를 작성하는 프로시져
Private Sub TxDataWindow_Change()
sTxData = TxDataWindow.Text
t2 = t2.Text
'sTxData3 = TxDataWindow3.Text
End Sub
'송신데이터를 전송하는 프로시져
Private Sub SendCommand_Click()
'송신데이터의 열을 송신버퍼에 전달
MSComm1.Output = sTxData + vbCr
MSComm1.Output = t2 + vbCr
Select Case Combo.Text
Case " "
Case "자동"
'
Case "반자동"
'
' 코드입력.Hide
' 조립품코드.Show
MSComm1.Output = "반자동"
Case "수동"
' If "수동" Then
MSComm1.Output = "수동"
MSComm1.Output = "김태완"
'End If
' 코드입력.Hide
' 성형품코드등록.Show
Case "저압수동"
' 코드입력.Hide
MSComm1.Output = "저압수동"
'금형등록.Show
End Select
aaa = txt3
'Data
aaa = Mid(Data, 1, 4)
Debug.Print aaa
'End If
'MSComm1.Output = "bb.frm"
End Sub
Private Sub MSComm1_OnComm()
Dim sRxD, sRxD2, RxStsMsg As String
CommandSentFlag = True
Select Case MSComm1.CommEvent
Case comEvReceive
sRxD = MSComm1.Input
'sRxD2 = MSComm1.Input
'txt = MSComm1.Input
'sRxD3 = MSComm1.Input
sRxData = sRxD
'sRxData2 = sRxD2
'txt3 = txt3 + txt
If Asc(sRxD) = Asc(vbCr) Then
RxStatus.Text = "Normal : 수신완료"
End If
' If Asc(sRxD2) = Asc(vbCr) Then
' RxStatus.Text = "Normal : 수신완료"
' End If
Case comEventFrame
RxStatus.Text = "Abnormal" + vbCrLf + "Frame Error"
Case comEventOverrun
RxStatus.Text = "Abnormal" + vbCrLf + "RxD Lost"
' RxStatus.Text = "Abnormal" + vbCrLf + "txt Lost"
Case comEventRxOver
RxStatus.Text = "Abnormal" + vbCrLf + "Receiver Buffer Overflow"
Case comEventRxParity
RxStatus.Text = "Abnormal" + vbCrLf + "Parity Error"
Case comEventTxFull
RxStatus.Text = "Abnormal" + vbCrLf + "Transmitter Buffer Full"
End Select
RxDataWindow.Text = sRxData
'RxDataWindow2.Text = sRxData2
'aa.List = sRxData
End Sub
'전송을 한번하고 난 뒤 다시 한번 더 전송할 경우 이전에 송신윈도우의
'데이터를 clear한다
Private Sub Again_Click()
TxDataWindow.Text = ""
RxDataWindow.Text = ""
RxStatus.Text = ""
End Sub
'CommandButton(Serial Link Test 완료)을 클릭하면 프로젝트 실행을
'완료하는 프로시져
Private Sub TestEnd_Click()
End
End Sub
이 게시물이 | |
AiRPAGE가 |
비베 관련 서적이나 자료를 좀더 공부하시면 이해가 더 빨리 될것 같습니다만...
관련 답글이 데브피아에 달린것 같군요.^^