Article ID: 169502
Article Last Modified on 7/30/1999
OUTFORM = CreateObject("comtst1")
OUTFORM.Show
READ EVENTS
DEFINE CLASS COMTST1 AS FORM
Top = 7
Left = 88
Height = 239
Width = 288
DOCREATE = .T.
Caption = "Form1"
Name = "Form1"
OUTVAL = .F.
ADD OBJECT TEXT1 AS TEXTBOX WITH ;
HEIGHT = 37, ;
LEFT = 29, ;
TOP = 84, ;
WIDTH = 229, ;
Name = "Text1"
ADD OBJECT Olecontrol1 AS Olecontrol WITH ;
OLECLASS="MSCOMMLib.MSComm.1",;
TOP = 12, ;
LEFT = 0, ;
HEIGHT = 100, ;
WIDTH = 100, ;
NULLDISCARD = .F., ;
Name = "Olecontrol1"
ADD OBJECT Command1 AS CommandBUTTON WITH ;
TOP = 37, ;
LEFT = 104, ;
HEIGHT = 27, ;
WIDTH = 84, ;
CAPTION = "Open Port", ;
TABINDEX = 2, ;
Name = "Command1"
ADD OBJECT Command2 AS CommandBUTTON WITH ;
TOP = 133, ;
LEFT = 104, ;
HEIGHT = 27, ;
WIDTH = 84, ;
CAPTION = "Send", ;
Name = "Command2"
ADD OBJECT Command3 AS CommandBUTTON WITH ;
TOP = 193, ;
LEFT = 104, ;
HEIGHT = 27, ;
WIDTH = 84, ;
CAPTION = "Exit", ;
Name = "Command3"
PROCEDURE Command1.Click
IF This.CAPTION="Open Port"
ThisForm.Olecontrol1.PORTOPEN=.T.
This.Caption = "Close Port"
Else
ThisForm.Olecontrol1.PORTOPEN=.F.
This.Caption = "Open Port"
EndIf
ENDPROC
PROCEDURE Command2.Click
*** Send CHR() representation of numbers entered ***
OVAL1 = ALLTRIM(ThisForm.TEXT1.Value)
OVAL2 = "chr(" + STRTRAN(OVAL1, " ", ")+chr(") + ")"
ThisForm.Olecontrol1.OUTPUT=&OVAL2
ENDPROC
PROCEDURE Command3.Click
ThisForm.Release
CLEAR EVENTS
ENDPROC
ENDDEFINE
INFORM = CREATEOBJECT("comtst2")
INFORM.SHOW
READ EVENTS
DEFINE CLASS comtst2 AS FORM
Top = 5
Left = 1
Height = 216
Width = 410
DoCreate = .T.
Caption = "Form1"
Name = "Form1"
inval1 = .F.
inval2 = .F.
ADD OBJECT Olecontrol1 AS OleCONTROL WITH ;
OleCLASS="MSCOMMLib.MSComm.1",;
TOP = 12, ;
LEFT = 12, ;
HEIGHT = 100, ;
WIDTH = 100, ;
NAME = "Olecontrol1", ;
NullDiscard = .F., ;
RThreshold = 10
ADD OBJECT Command1 AS CommandBUTTON WITH ;
TOP = 24, ;
LEFT = 150, ;
HEIGHT = 27, ;
WIDTH = 84, ;
CAPTION = "Open Port", ;
NAME = "Command1"
ADD OBJECT Edit1 AS EditBOX WITH ;
FONTNAME = "Arial", ;
HEIGHT = 64, ;
LEFT = 24, ;
TOP = 72, ;
WIDTH = 252, ;
NAME = "Edit1"
ADD OBJECT Command2 AS CommandBUTTON WITH ;
TOP = 108, ;
LEFT = 298, ;
HEIGHT = 27, ;
WIDTH = 84, ;
CAPTION = "Clear Text", ;
NAME = "Command2"
ADD OBJECT Command3 AS CommandBUTTON WITH ;
TOP = 72, ;
LEFT = 298, ;
HEIGHT = 27, ;
WIDTH = 84, ;
CAPTION = "View Input", ;
ENABLED = .F., ;
NAME = "Command3"
ADD OBJECT Command4 AS CommandBUTTON WITH ;
TOP = 178, ;
LEFT = 150, ;
HEIGHT = 27, ;
WIDTH = 84, ;
CAPTION = "Exit", ;
NAME = "Command4"
PROCEDURE Command1.CLICK
IF This.CAPTION="Open Port"
ThisForm.Olecontrol1.portopen=.T.
This.CAPTION = "Close Port"
ThisForm.Command3.ENABLED=.T.
ELSE
ThisForm.Olecontrol1.portopen=.F.
This.CAPTION = "Open Port"
ThisForm.Command3.ENABLED=.F.
ENDIF
ENDPROC
PROCEDURE Command2.CLICK
ThisForm.Edit1.VALUE = ""
ENDPROC
PROCEDURE Command3.CLICK
ThisForm.inval1 = ThisForm.Olecontrol1.INPUT
FOR i = 1 TO LEN(ThisForm.inval1)
ThisForm.inval2 = ASC(SUBSTR(ThisForm.inval1, i, 1))
ThisForm.Edit1.VALUE=ThisForm.Edit1.VALUE+;
" "+ALLTRIM(STR(ThisForm.inval2))+" "
ENDFOR
ENDPROC
PROCEDURE Command4.CLICK
ThisForm.RELEASE
CLEAR EVENTS
ENDPROC
ENDDEFINE
15 255 13 10 25
15 255 0 13 10 25
Keywords: kbbug kbfix kbinterop kbcode KB169502