w_sys_login_q6.srw 46 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225122612271228122912301231123212331234123512361237123812391240124112421243124412451246124712481249125012511252125312541255125612571258125912601261126212631264126512661267126812691270127112721273127412751276127712781279128012811282128312841285128612871288128912901291129212931294129512961297129812991300130113021303130413051306130713081309131013111312131313141315131613171318131913201321132213231324132513261327132813291330133113321333133413351336133713381339134013411342134313441345134613471348134913501351135213531354135513561357135813591360136113621363136413651366136713681369137013711372137313741375137613771378137913801381138213831384138513861387138813891390139113921393139413951396139713981399140014011402140314041405140614071408140914101411141214131414141514161417141814191420142114221423142414251426142714281429143014311432143314341435143614371438143914401441144214431444144514461447144814491450145114521453145414551456145714581459146014611462146314641465146614671468146914701471147214731474147514761477147814791480148114821483148414851486148714881489149014911492149314941495149614971498149915001501150215031504150515061507150815091510151115121513151415151516151715181519152015211522152315241525152615271528152915301531153215331534153515361537153815391540154115421543154415451546154715481549155015511552155315541555155615571558155915601561156215631564156515661567156815691570157115721573157415751576157715781579158015811582158315841585158615871588158915901591159215931594159515961597159815991600160116021603160416051606160716081609161016111612161316141615161616171618161916201621162216231624162516261627162816291630163116321633163416351636163716381639164016411642164316441645164616471648164916501651165216531654165516561657165816591660166116621663166416651666166716681669167016711672167316741675167616771678167916801681168216831684168516861687168816891690169116921693169416951696169716981699170017011702170317041705170617071708170917101711171217131714171517161717171817191720172117221723172417251726172717281729173017311732173317341735173617371738173917401741174217431744174517461747174817491750175117521753175417551756175717581759176017611762176317641765176617671768176917701771177217731774177517761777177817791780178117821783178417851786178717881789179017911792179317941795179617971798179918001801180218031804180518061807180818091810181118121813181418151816181718181819182018211822182318241825182618271828182918301831183218331834183518361837183818391840184118421843184418451846184718481849185018511852185318541855185618571858185918601861186218631864186518661867186818691870187118721873187418751876187718781879188018811882188318841885188618871888188918901891189218931894
  1. $PBExportHeader$w_sys_login_q6.srw
  2. forward
  3. global type w_sys_login_q6 from w_publ_base
  4. end type
  5. type cb_3 from commandbutton within w_sys_login_q6
  6. end type
  7. type em_remoteport from editmask within w_sys_login_q6
  8. end type
  9. type st_3 from statictext within w_sys_login_q6
  10. end type
  11. type sle_remotehost from singlelineedit within w_sys_login_q6
  12. end type
  13. type st_4 from statictext within w_sys_login_q6
  14. end type
  15. type st_msg from statictext within w_sys_login_q6
  16. end type
  17. type st_5 from statictext within w_sys_login_q6
  18. end type
  19. type st_6 from statictext within w_sys_login_q6
  20. end type
  21. type st_7 from statictext within w_sys_login_q6
  22. end type
  23. type em_frame_size from editmask within w_sys_login_q6
  24. end type
  25. type st_8 from statictext within w_sys_login_q6
  26. end type
  27. type em_2 from editmask within w_sys_login_q6
  28. end type
  29. type cb_ok from uo_imflatbutton within w_sys_login_q6
  30. end type
  31. type cb_connect from uo_imflatbutton within w_sys_login_q6
  32. end type
  33. type cb_disconnect from uo_imflatbutton within w_sys_login_q6
  34. end type
  35. type st_9 from statictext within w_sys_login_q6
  36. end type
  37. type sle_autodistime from singlelineedit within w_sys_login_q6
  38. end type
  39. type p_ip from picture within w_sys_login_q6
  40. end type
  41. type cbx_saveuid from checkbox within w_sys_login_q6
  42. end type
  43. type cb_chc from uo_imflatbutton within w_sys_login_q6
  44. end type
  45. type st_11 from statictext within w_sys_login_q6
  46. end type
  47. type st_name from statictext within w_sys_login_q6
  48. end type
  49. type st_status from statictext within w_sys_login_q6
  50. end type
  51. type gb_1 from groupbox within w_sys_login_q6
  52. end type
  53. type r_1 from rectangle within w_sys_login_q6
  54. end type
  55. type ln_2 from line within w_sys_login_q6
  56. end type
  57. type ln_3 from line within w_sys_login_q6
  58. end type
  59. type ln_4 from line within w_sys_login_q6
  60. end type
  61. type ln_5 from line within w_sys_login_q6
  62. end type
  63. type p_1 from picture within w_sys_login_q6
  64. end type
  65. type sle_pwd from singlelineedit within w_sys_login_q6
  66. end type
  67. type sle_uid from singlelineedit within w_sys_login_q6
  68. end type
  69. type ddlb_acount from dropdownlistbox within w_sys_login_q6
  70. end type
  71. type cb_2 from uo_imflatbutton within w_sys_login_q6
  72. end type
  73. type st_version from statictext within w_sys_login_q6
  74. end type
  75. type st_1 from statictext within w_sys_login_q6
  76. end type
  77. type st_2 from statictext within w_sys_login_q6
  78. end type
  79. type st_10 from statictext within w_sys_login_q6
  80. end type
  81. end forward
  82. global type w_sys_login_q6 from w_publ_base
  83. integer width = 2249
  84. integer height = 1512
  85. string title = "企精灵6"
  86. boolean controlmenu = false
  87. boolean minbox = false
  88. windowtype windowtype = response!
  89. long backcolor = 16777215
  90. event ue_refresh_prpstaus ( )
  91. cb_3 cb_3
  92. em_remoteport em_remoteport
  93. st_3 st_3
  94. sle_remotehost sle_remotehost
  95. st_4 st_4
  96. st_msg st_msg
  97. st_5 st_5
  98. st_6 st_6
  99. st_7 st_7
  100. em_frame_size em_frame_size
  101. st_8 st_8
  102. em_2 em_2
  103. cb_ok cb_ok
  104. cb_connect cb_connect
  105. cb_disconnect cb_disconnect
  106. st_9 st_9
  107. sle_autodistime sle_autodistime
  108. p_ip p_ip
  109. cbx_saveuid cbx_saveuid
  110. cb_chc cb_chc
  111. st_11 st_11
  112. st_name st_name
  113. st_status st_status
  114. gb_1 gb_1
  115. r_1 r_1
  116. ln_2 ln_2
  117. ln_3 ln_3
  118. ln_4 ln_4
  119. ln_5 ln_5
  120. p_1 p_1
  121. sle_pwd sle_pwd
  122. sle_uid sle_uid
  123. ddlb_acount ddlb_acount
  124. cb_2 cb_2
  125. st_version st_version
  126. st_1 st_1
  127. st_2 st_2
  128. st_10 st_10
  129. end type
  130. global w_sys_login_q6 w_sys_login_q6
  131. type prototypes
  132. FUNCTION boolean GetComputerNameA(ref string cname,ref long nbuf) LIBRARY "kernel32.dll" alias for "GetComputerNameA;Ansi"
  133. Function long getcpuid() Library "getcpuid.dll"
  134. end prototypes
  135. type variables
  136. int if_halt=0 //默认不退出系统
  137. int if_openprp=0 //是否打开连接属性面版
  138. int if_connected=0//是否已经连接了
  139. time ins_connectedtime//连接成功的时间(非连接状态为null)
  140. long ins_autodisconnect_sec=10//连接成功不登录等待自动断开的时间
  141. String ins_signStr = ">> "
  142. String uid = ""
  143. String pwd = ""//加密的
  144. String Acount = ""
  145. String HostName
  146. String IP
  147. string LastAcount
  148. string LastUser
  149. string StatusMsg = "请先连接服务器!"
  150. String MsgHead[] = {"<MH>","<Msg>"}
  151. String MsgEnd[] = {"</MH>","</Msg>"}
  152. //
  153. Int I_ERROR = 0
  154. Int I_MSG = 1
  155. Int I_STATUS = 2
  156. Int I_ACOUNT = 3
  157. Int I_DBINFO = 4
  158. Int I_SETREQ = 5
  159. Int I_LOGINREQ = 6
  160. Int I_RELOGINREQ = 7
  161. Int I_CHKLOGINREQ = 8
  162. Int I_USERQUTIREQ = 9
  163. s_msgframe s_msg
  164. string ins_LoginAcount = ""
  165. //返回值,是否换账套重新登陆 0:首次 1:帐套相同 2:帐套不同
  166. int ins_ReLogin = 0
  167. boolean I_Login = false
  168. boolean Ib_AcountMustUser = false
  169. boolean Ib_EmptyAcount = false
  170. uo_fingerprint uo_fp
  171. boolean lb_collect = false
  172. end variables
  173. forward prototypes
  174. public function string wf_getcomputername ()
  175. public function integer wf_acceptmsg ()
  176. public function integer wf_sendmsg (integer arg_framenum)
  177. public function integer wf_write_ini ()
  178. public function integer wf_connect ()
  179. public subroutine wf_lock (boolean arg_flag)
  180. end prototypes
  181. event ue_refresh_prpstaus();
  182. IF if_openprp = 1 THEN
  183. // THIS.Height = 1040
  184. This.Height = 1432 + This.Height - This.WorkSpaceHeight()
  185. cb_2.Text = '︽'
  186. ELSE
  187. // THIS.Height = 740
  188. This.Height = 1100 + This.Height - This.WorkSpaceHeight()
  189. cb_2.Text = '︾'
  190. END IF
  191. cb_2.TriggerEvent('ue_textchange')
  192. end event
  193. public function string wf_getcomputername ();String ls_computername=space(512)
  194. Long ll_buffer=512
  195. Getcomputernamea(ls_computername,ll_buffer)
  196. Return ls_computername
  197. end function
  198. public function integer wf_acceptmsg ();Long AcountIndex, i
  199. Long rslt = 0 //, ll_TotalItems
  200. String ls_regtitle
  201. //Long li_version_type
  202. IF sys_buf_s_msgFrame.Error < 0 THEN
  203. IF sys_buf_s_msgFrame.Error = -1 THEN
  204. MessageBox('系统提示',sys_buf_s_msgFrame.ErrorMsg)
  205. ELSEIF sys_buf_s_msgFrame.Error = -14 THEN //
  206. IF Lower(Trim(sle_uid.Text)) = "super" THEN
  207. IF MessageBox('系统提示',sys_buf_s_msgFrame.ErrorMsg+",是否要查看在线用户?", Exclamation!, OKCancel!, 2) = 1 THEN
  208. Open(w_client_list)
  209. END IF
  210. ELSE
  211. MessageBox('系统提示',sys_buf_s_msgFrame.ErrorMsg)
  212. END IF
  213. ELSEIF sys_buf_s_msgFrame.Error = -15 THEN //
  214. MessageBox('系统提示',sys_buf_s_msgFrame.ErrorMsg)
  215. END IF
  216. sle_pwd.SelectText( 1, Len(sle_pwd.Text))
  217. sle_pwd.SetFocus()
  218. StatusMsg = "错误:"+sys_buf_s_msgFrame.ErrorMsg
  219. ELSE
  220. IF sys_buf_s_msgFrame.MsgType = 4 THEN
  221. sys_ServerName = sys_buf_s_msgFrame.frame_str[1]
  222. sys_DataBase = sys_buf_s_msgFrame.frame_str[2]
  223. sys_LoginID = sys_buf_s_msgFrame.frame_str[3]
  224. sys_LoginPwd = sys_buf_s_msgFrame.frame_str[4] //加密的
  225. sys_version = long(sys_buf_s_msgFrame.frame_str[5]) //系统版本
  226. sys_if_locker = Integer(sys_buf_s_msgFrame.frame_str[6])
  227. sys_if_register = Integer(sys_buf_s_msgFrame.frame_str[7])
  228. sys_message_timeoutdate = sys_buf_s_msgFrame.frame_str[8]
  229. IF sys_buf_s_msgFrame.frame_str_index >=19 THEN//附件数据库, 消息数据库
  230. sys_ServerNameFJ = sys_buf_s_msgFrame.frame_str[12]
  231. sys_DataBaseFJ = sys_buf_s_msgFrame.frame_str[13]
  232. sys_LoginIDFJ = sys_buf_s_msgFrame.frame_str[14]
  233. sys_LoginPwdFJ = sys_buf_s_msgFrame.frame_str[15]
  234. sys_ServerNameMsg = sys_buf_s_msgFrame.frame_str[16]
  235. sys_DataBaseMsg = sys_buf_s_msgFrame.frame_str[17]
  236. sys_LoginIDMsg = sys_buf_s_msgFrame.frame_str[18]
  237. sys_LoginPwdMsg = sys_buf_s_msgFrame.frame_str[19]
  238. END IF
  239. sys_userid = sys_buf_s_msgFrame.UserID
  240. sys_DBMS = 'OLE DB' //ProfileString (sys_inifilename, "database", "dbms", "")
  241. sys_dbpass = ProfileString (sys_inifilename, "database", "dbpass", "") //加密的
  242. sys_dbparm = ProfileString (sys_inifilename, "database", "dbparm", "") //加密的
  243. IF Pos(sys_buf_s_msgFrame.frame_str[5] , "80200") > 0 THEN
  244. IF sys_buf_s_msgFrame.frame_str[5] = '802001' THEN //商业
  245. sys_version_type = 1
  246. sys_version_id = '801001ewiserpv5.0'
  247. sys_versionName = "商业版"
  248. sys_version_int = 1
  249. ELSEIF sys_buf_s_msgFrame.frame_str[5] = '802002' THEN //工业
  250. sys_version_type = 0
  251. sys_version_id = '801002ewiserpv5.0'
  252. sys_versionName = "工业版"
  253. sys_version_int = 2
  254. ELSEIF sys_buf_s_msgFrame.frame_str[5] = '802003' THEN //工业+
  255. sys_version_type = 2
  256. sys_version_id = '801003ewiserpv5.0'
  257. sys_versionName = "工业版+"
  258. sys_version_int = 3
  259. END IF
  260. ELSE
  261. MessageBox('系统提示',sys_SoftWareName+'不能连接旧版后台服务,请先安装新版后台服务')
  262. HALT
  263. END IF
  264. publ_userid = Trim(sle_uid.Text)
  265. sys_psw = Trim(sle_pwd.Text)
  266. sys_if_network = 1
  267. IF sys_buf_s_msgFrame.ErrorMsg <> "" THEN
  268. MessageBox('系统提示',sys_buf_s_msgFrame.ErrorMsg)
  269. END IF
  270. StatusMsg = "连接帐套:"+sys_DataBase+",登陆用户:"+publ_userid
  271. I_Login = TRUE
  272. rslt = 1
  273. ELSEIF sys_buf_s_msgFrame.MsgType = 3 THEN
  274. IF sys_buf_s_msgFrame.if_register = 1 THEN
  275. ls_regtitle = ""
  276. ELSE
  277. ls_regtitle = "[试用]"
  278. END IF
  279. IF sys_buf_s_msgFrame.version_id = '802001' THEN //商业
  280. sys_version_type = 1
  281. sys_version_id = '801001ewiserpv5.0'
  282. sys_versionName = "商业版"
  283. st_version.text = "商业版[网络]"+ls_regtitle
  284. ELSEIF sys_buf_s_msgFrame.version_id = '802002' THEN //工业
  285. sys_version_type = 0
  286. sys_version_id = '801002ewiserpv5.0'
  287. sys_versionName = "工业版"
  288. st_version.text = "工业版[网络]"+ls_regtitle
  289. ELSEIF sys_buf_s_msgFrame.version_id = '802003' THEN //工业+
  290. sys_version_type = 2
  291. sys_version_id = '801003ewiserpv5.0'
  292. sys_versionName = "工业版+"
  293. st_version.text = "工业版+[网络]"+ls_regtitle
  294. ELSE
  295. MessageBox('系统提示',sys_SoftWareName+'不能连接旧版后台服务,请先安装新版后台服务')
  296. return 0 //HALT
  297. END IF
  298. Ib_AcountMustUser = sys_buf_s_msgFrame.AcountMustUser
  299. IF sys_buf_s_msgFrame.acountCnt > 0 THEN //IF UpperBound(sys_buf_s_msgFrame.acount) > 0 THEN
  300. Ib_EmptyAcount = FALSE
  301. ddlb_acount.Enabled = TRUE
  302. ddlb_acount.Reset()
  303. ddlb_acount.Text = ""
  304. // ll_TotalItems = ddlb_acount.TotalItems()
  305. // FOR i = 1 TO ll_TotalItems
  306. // ddlb_acount.DeleteItem( 1 )
  307. // NEXT
  308. FOR i = 1 TO sys_buf_s_msgFrame.acountCnt //UpperBound(sys_buf_s_msgFrame.acount)
  309. ddlb_acount.AddItem( sys_buf_s_msgFrame.acount[i])
  310. IF LastAcount = sys_buf_s_msgFrame.acount[i] THEN
  311. AcountIndex = i
  312. END IF
  313. NEXT
  314. IF AcountIndex > 0 THEN
  315. ddlb_acount.SelectItem( AcountIndex)
  316. ELSE
  317. ddlb_acount.SelectItem( 1)
  318. END IF
  319. // IF sys_version_id = '802001ewiserpv5.0' THEN
  320. //// THIS.Title = "身份确认 - 龙嘉企精灵V3.1商业版" + ls_regtitle
  321. //
  322. // ELSEIF sys_version_id = '802002ewiserpv5.0' THEN
  323. //// THIS.Title = "身份确认 - 龙嘉企精灵V3.1工业版 " + ls_regtitle
  324. //
  325. // ELSEIF sys_version_id = '802003ewiserpv5.0' THEN
  326. //// THIS.Title = "身份确认 - 龙嘉企精灵V3.1工业版+"+ ls_regtitle
  327. //
  328. // END IF
  329. StatusMsg = "请选择要登陆的MIS帐套!"
  330. ELSE
  331. Ib_EmptyAcount = TRUE
  332. IF Ib_AcountMustUser THEN
  333. StatusMsg = "严格MIS帐套模式,请输入用户名/密码获取MIS帐套!"
  334. ddlb_acount.Reset()
  335. ddlb_acount.Text = ""
  336. ddlb_acount.Enabled = false
  337. ELSE
  338. StatusMsg = "宽松MIS帐套模式,请检查服务器MIS帐套设置是否正确!"
  339. END IF
  340. END IF
  341. ELSE
  342. END IF
  343. END IF
  344. RETURN rslt
  345. end function
  346. public function integer wf_sendmsg (integer arg_framenum);Long rslt = 0
  347. sys_wsc.setsendmsg( s_msg, arg_framenum)
  348. sys_wsc.TriggerEvent('ue_send') //发送命令
  349. IF IsValid(w_ws) THEN
  350. w_ws.ins_HeartBeatSec = 0
  351. END IF
  352. //rslt = //20秒内超时
  353. IF f_waitforrslt_ws(sys_retritime) = 0 THEN
  354. MessageBox('系统提示','服务器超时!')
  355. rslt = -1
  356. GOTO ext
  357. END IF
  358. IF wf_acceptmsg() = 1 THEN
  359. rslt = 1
  360. END IF
  361. ext:
  362. RETURN rslt
  363. end function
  364. public function integer wf_write_ini ();//写入INI
  365. String IPAddress
  366. Long Port
  367. IPAddress = Trim(sle_remotehost.Text)
  368. Port = Long(em_remoteport.Text)
  369. Long i,j,ll_iffind
  370. String ls_ini_ip,ls_ini_ip_j
  371. //先查询是否已保存在INI中.有则不再操作
  372. FOR i = 1 TO 10
  373. ls_ini_ip = ProfileString (sys_inifilename,'sys_dl_ip', String(i), '')
  374. IF ls_ini_ip = Trim(IPAddress) +':' + String(Port) THEN
  375. ll_iffind = 1
  376. EXIT
  377. END IF
  378. NEXT
  379. //如果没有记录在INI中,则先将1~9号顺延一位,然后将新IP记录在序号为"1"的位置中.
  380. IF ll_iffind = 0 THEN
  381. FOR j = 9 TO 1 STEP -1
  382. ls_ini_ip_j = ProfileString (sys_inifilename,'sys_dl_ip', String(j), '')
  383. IF Trim(ls_ini_ip_j) = '' THEN CONTINUE
  384. SetProfileString (sys_inifilename,'sys_dl_ip', String(j + 1), ls_ini_ip_j)
  385. NEXT
  386. SetProfileString (sys_inifilename,'sys_dl_ip', '1', Trim(IPAddress) +':' + String(Port))
  387. END IF
  388. // //
  389. RETURN 1
  390. end function
  391. public function integer wf_connect ();return 1
  392. end function
  393. public subroutine wf_lock (boolean arg_flag);IF NOT arg_flag THEN
  394. ddlb_acount.Enabled = TRUE
  395. sle_uid.Enabled = TRUE
  396. sle_pwd.Enabled = TRUE
  397. cb_ok.Enabled = TRUE
  398. cb_ok.Text = '确定'
  399. cb_chc.Enabled = TRUE
  400. cb_exit.Enabled = TRUE
  401. lb_collect = false
  402. ELSE
  403. ddlb_acount.Enabled = FALSE
  404. sle_uid.Enabled = FALSE
  405. sle_pwd.Enabled = FALSE
  406. cb_ok.Enabled = FALSE
  407. cb_ok.Text = '验证指纹中'
  408. cb_chc.Enabled = FALSE
  409. cb_exit.Enabled = FALSE
  410. lb_collect = TRUE
  411. END IF
  412. end subroutine
  413. on w_sys_login_q6.create
  414. int iCurrent
  415. call super::create
  416. this.cb_3=create cb_3
  417. this.em_remoteport=create em_remoteport
  418. this.st_3=create st_3
  419. this.sle_remotehost=create sle_remotehost
  420. this.st_4=create st_4
  421. this.st_msg=create st_msg
  422. this.st_5=create st_5
  423. this.st_6=create st_6
  424. this.st_7=create st_7
  425. this.em_frame_size=create em_frame_size
  426. this.st_8=create st_8
  427. this.em_2=create em_2
  428. this.cb_ok=create cb_ok
  429. this.cb_connect=create cb_connect
  430. this.cb_disconnect=create cb_disconnect
  431. this.st_9=create st_9
  432. this.sle_autodistime=create sle_autodistime
  433. this.p_ip=create p_ip
  434. this.cbx_saveuid=create cbx_saveuid
  435. this.cb_chc=create cb_chc
  436. this.st_11=create st_11
  437. this.st_name=create st_name
  438. this.st_status=create st_status
  439. this.gb_1=create gb_1
  440. this.r_1=create r_1
  441. this.ln_2=create ln_2
  442. this.ln_3=create ln_3
  443. this.ln_4=create ln_4
  444. this.ln_5=create ln_5
  445. this.p_1=create p_1
  446. this.sle_pwd=create sle_pwd
  447. this.sle_uid=create sle_uid
  448. this.ddlb_acount=create ddlb_acount
  449. this.cb_2=create cb_2
  450. this.st_version=create st_version
  451. this.st_1=create st_1
  452. this.st_2=create st_2
  453. this.st_10=create st_10
  454. iCurrent=UpperBound(this.Control)
  455. this.Control[iCurrent+1]=this.cb_3
  456. this.Control[iCurrent+2]=this.em_remoteport
  457. this.Control[iCurrent+3]=this.st_3
  458. this.Control[iCurrent+4]=this.sle_remotehost
  459. this.Control[iCurrent+5]=this.st_4
  460. this.Control[iCurrent+6]=this.st_msg
  461. this.Control[iCurrent+7]=this.st_5
  462. this.Control[iCurrent+8]=this.st_6
  463. this.Control[iCurrent+9]=this.st_7
  464. this.Control[iCurrent+10]=this.em_frame_size
  465. this.Control[iCurrent+11]=this.st_8
  466. this.Control[iCurrent+12]=this.em_2
  467. this.Control[iCurrent+13]=this.cb_ok
  468. this.Control[iCurrent+14]=this.cb_connect
  469. this.Control[iCurrent+15]=this.cb_disconnect
  470. this.Control[iCurrent+16]=this.st_9
  471. this.Control[iCurrent+17]=this.sle_autodistime
  472. this.Control[iCurrent+18]=this.p_ip
  473. this.Control[iCurrent+19]=this.cbx_saveuid
  474. this.Control[iCurrent+20]=this.cb_chc
  475. this.Control[iCurrent+21]=this.st_11
  476. this.Control[iCurrent+22]=this.st_name
  477. this.Control[iCurrent+23]=this.st_status
  478. this.Control[iCurrent+24]=this.gb_1
  479. this.Control[iCurrent+25]=this.r_1
  480. this.Control[iCurrent+26]=this.ln_2
  481. this.Control[iCurrent+27]=this.ln_3
  482. this.Control[iCurrent+28]=this.ln_4
  483. this.Control[iCurrent+29]=this.ln_5
  484. this.Control[iCurrent+30]=this.p_1
  485. this.Control[iCurrent+31]=this.sle_pwd
  486. this.Control[iCurrent+32]=this.sle_uid
  487. this.Control[iCurrent+33]=this.ddlb_acount
  488. this.Control[iCurrent+34]=this.cb_2
  489. this.Control[iCurrent+35]=this.st_version
  490. this.Control[iCurrent+36]=this.st_1
  491. this.Control[iCurrent+37]=this.st_2
  492. this.Control[iCurrent+38]=this.st_10
  493. end on
  494. on w_sys_login_q6.destroy
  495. call super::destroy
  496. destroy(this.cb_3)
  497. destroy(this.em_remoteport)
  498. destroy(this.st_3)
  499. destroy(this.sle_remotehost)
  500. destroy(this.st_4)
  501. destroy(this.st_msg)
  502. destroy(this.st_5)
  503. destroy(this.st_6)
  504. destroy(this.st_7)
  505. destroy(this.em_frame_size)
  506. destroy(this.st_8)
  507. destroy(this.em_2)
  508. destroy(this.cb_ok)
  509. destroy(this.cb_connect)
  510. destroy(this.cb_disconnect)
  511. destroy(this.st_9)
  512. destroy(this.sle_autodistime)
  513. destroy(this.p_ip)
  514. destroy(this.cbx_saveuid)
  515. destroy(this.cb_chc)
  516. destroy(this.st_11)
  517. destroy(this.st_name)
  518. destroy(this.st_status)
  519. destroy(this.gb_1)
  520. destroy(this.r_1)
  521. destroy(this.ln_2)
  522. destroy(this.ln_3)
  523. destroy(this.ln_4)
  524. destroy(this.ln_5)
  525. destroy(this.p_1)
  526. destroy(this.sle_pwd)
  527. destroy(this.sle_uid)
  528. destroy(this.ddlb_acount)
  529. destroy(this.cb_2)
  530. destroy(this.st_version)
  531. destroy(this.st_1)
  532. destroy(this.st_2)
  533. destroy(this.st_10)
  534. end on
  535. event close;call super::close;
  536. Timer(0)
  537. IF if_halt = 0 THEN
  538. IF IsValid(sys_wsc) THEN
  539. sys_wsc.Close()
  540. CloseUserObject(sys_wsc)
  541. END IF
  542. IF IsValid(w_ws) THEN
  543. Close(w_ws)
  544. END IF
  545. f_terminate_l1()
  546. DISCONNECT USING sqlca;
  547. HALT
  548. // RETURN
  549. ELSE
  550. wf_write_ini()
  551. SetProfileString(sys_inifilename,'longjoews','frame_size',em_frame_size.Text)
  552. SetProfileString(sys_inifilename,'longjoews','remotehost',sle_remotehost.Text)
  553. SetProfileString(sys_inifilename,'longjoews','remoteport',em_remoteport.Text)
  554. SetProfileString(sys_inifilename,'longjoews','max_reconnect',em_2.Text)
  555. SetProfileString(sys_inifilename,'longjoews','autodisconnect_sec',sle_autodistime.Text)
  556. SetProfileString(sys_inifilename,'longjoews','LastAcount',ddlb_acount.Text)
  557. IF cbx_saveuid.Checked THEN
  558. SetProfileString(sys_inifilename,'longjoews','SaveUID',"1")
  559. SetProfileString(sys_inifilename,'longjoews','LastUID',sle_uid.Text )
  560. ELSE
  561. SetProfileString(sys_inifilename,'longjoews','SaveUID',"0")
  562. END IF
  563. sys_Status = 1
  564. IF ins_ReLogin = 1 THEN
  565. IF Trim(ins_LoginAcount) <> Trim(ddlb_acount.Text) THEN
  566. ins_ReLogin = 2
  567. uo_sys_main uo_main
  568. uo_main.uof_closeall()
  569. DISCONNECT USING sqlca;
  570. END IF
  571. END IF
  572. END IF
  573. // 断开电话盒连接
  574. uo_cc301_ins.closedevice( )
  575. CloseWithReturn(THIS,ins_ReLogin)
  576. end event
  577. event open;call super::open;
  578. //1.新登陆
  579. // 1.1.新登陆,连上
  580. // 1.2.新登陆,连不上
  581. //2.重新登陆
  582. Timer(0.1)
  583. sys_Status = 0
  584. IF sys_wsc.getstate() <> 7 THEN //新登陆
  585. cb_connect.TriggerEvent(Clicked!) //连接
  586. ELSE //重新登陆
  587. //发送请求返回登陆帐套
  588. s_msg.FrameHead = I_ACOUNT
  589. IF wf_sendmsg(0) = 1 THEN
  590. StatusMsg = "请输入用户名,密码登陆!"
  591. END IF
  592. END IF
  593. IF sys_wsc.getstate() = 7 THEN
  594. IF cbx_saveuid.Checked AND sle_uid.Text <> '' THEN
  595. sle_pwd.SetFocus()
  596. ELSE
  597. sle_uid.SelectText( 1, Len(sle_uid.Text))
  598. sle_uid.SetFocus( )
  599. END IF
  600. END IF
  601. end event
  602. event timer;call super::timer;//1秒检测一次连接状态
  603. String arg_msg, arg_msg1
  604. CHOOSE CASE sys_wsc.Object.State()
  605. CASE 0
  606. arg_msg = "关闭"
  607. StatusMsg = "请先连接服务器!"
  608. CASE 1
  609. arg_msg = "打开"
  610. CASE 2
  611. arg_msg = "侦听"
  612. CASE 3
  613. arg_msg = "连接挂起"
  614. CASE 4
  615. arg_msg = "识别主机"
  616. CASE 5
  617. arg_msg = "已识别主机"
  618. CASE 6
  619. arg_msg = "正在连接"
  620. CASE 7
  621. arg_msg = "已连接"
  622. CASE 8
  623. arg_msg = "同级人员正在关闭连接"
  624. sys_wsc.Object.Close()
  625. CASE 9
  626. arg_msg = "错误"
  627. sys_wsc.Object.Close()
  628. IF IsValid(w_waitforconnect) THEN
  629. Close(w_waitforconnect)
  630. END IF
  631. MessageBox('连接失败','连接设置有误或网络问题,请检查连接设置是否正确!')
  632. END CHOOSE
  633. IF sys_wsc.Object.State() = 7 THEN
  634. //IF if_connected = 0 THEN
  635. // ins_connectedtime = Now()
  636. // END IF
  637. ins_connectedtime = Now() //临时干预,不让其自动退出;
  638. if_connected = 1
  639. IF not IsNull(ins_connectedtime) THEN
  640. Long ll_DisConnectSec
  641. ll_DisConnectSec = ins_autodisconnect_sec - SecondsAfter(ins_connectedtime,Now())
  642. IF ll_DisConnectSec <= 0 THEN
  643. cb_disconnect.TriggerEvent(Clicked!)
  644. //MessageBox('连接','自动断开!')
  645. END IF
  646. arg_msg1 = ",系统将在" +String(ll_DisConnectSec)+"后断开连接"
  647. END IF
  648. cb_connect.Enabled = FALSE
  649. cb_disconnect.Enabled = TRUE
  650. sle_remotehost.Enabled = FALSE
  651. em_remoteport.Enabled = FALSE
  652. em_frame_size.Enabled = FALSE
  653. em_2.Enabled = FALSE
  654. sle_autodistime.Enabled = FALSE
  655. ELSE
  656. if_connected = 0
  657. SetNull(ins_connectedtime)
  658. cb_connect.Enabled = TRUE
  659. cb_disconnect.Enabled = FALSE
  660. IF sys_wsc.Object.State() = 0 THEN
  661. sle_remotehost.Enabled = TRUE
  662. em_remoteport.Enabled = TRUE
  663. em_frame_size.Enabled = TRUE
  664. em_2.Enabled = TRUE
  665. sle_autodistime.Enabled = TRUE
  666. END IF
  667. if_openprp = 1
  668. END IF
  669. st_msg.Text = arg_msg
  670. st_status.Text = "连接状态:"+arg_msg + arg_msg1 + "," + StatusMsg
  671. st_6.Text = String(Now())
  672. THIS.TriggerEvent('ue_refresh_prpstaus')
  673. //if not Ib_AcountMustUser and Ib_EmptyAcount then
  674. // s_msg.FrameHead = I_ACOUNT
  675. // IF wf_sendmsg(0) = 1 THEN
  676. // StatusMsg = "请输入用户名,密码登陆!"
  677. // END IF
  678. //end if
  679. end event
  680. event resize;call super::resize;ln_2.endx = this.width
  681. ln_3.endx = this.width
  682. ln_4.endx = this.width
  683. ln_5.endx = this.width
  684. //st_status.y = p_1.y + p_1.height + 10
  685. st_status.y = ln_3.endy + 6
  686. r_1.y = st_status.y + st_status.height
  687. st_status.width=this.workspacewidth()
  688. r_1.width=this.workspacewidth()
  689. r_1.height=this.workspaceheight() - r_1.y
  690. end event
  691. event ue_before_open;call super::ue_before_open;//cb_ok.color_bk_out = rgb(184,202,238)
  692. //shl_1.visible = false
  693. //THIS.Height = 740
  694. SetNull(ins_connectedtime)
  695. sle_remotehost.Text = ProfileString(sys_inifilename,'longjoews','remotehost','127.0.0.1')
  696. em_remoteport.Text = ProfileString(sys_inifilename,'longjoews','remoteport','7893')
  697. em_frame_size.Text = ProfileString(sys_inifilename,'longjoews','frame_size','1000')
  698. sle_autodistime.Text = ProfileString(sys_inifilename,'longjoews','autodisconnect_sec',"10") //string(ins_autodisconnect_sec)
  699. em_2.Text = ProfileString(sys_inifilename,'longjoews','max_reconnect','3')
  700. ins_autodisconnect_sec = Long(sle_autodistime.Text)
  701. LastAcount = ProfileString(sys_inifilename,'longjoews','LastAcount','LJERP1')
  702. HostName = wf_getcomputername()
  703. st_name.Text = HostName
  704. Int i
  705. i = ProfileInt(sys_inifilename,'longjoews','SaveUID',0)
  706. IF i = 0 THEN
  707. cbx_saveuid.Checked = FALSE
  708. ELSE
  709. cbx_saveuid.Checked = TRUE
  710. END IF
  711. IF sys_wsc.getstate() <> 7 THEN //新登陆
  712. //处理界面
  713. // cb_ok.X = 453
  714. // cb_exit.X = 1019
  715. cb_chc.Visible = FALSE
  716. ins_ReLogin = 0
  717. I_Login = FALSE
  718. IF cbx_saveuid.Checked THEN
  719. sle_uid.Text = ProfileString(sys_inifilename,'longjoews','LastUID','')
  720. END IF
  721. ELSE
  722. //处理界面
  723. cb_chc.Visible = TRUE
  724. // cb_ok.X = 315
  725. // cb_exit.X = 1120
  726. ins_ReLogin = 1
  727. I_Login = TRUE
  728. ddlb_acount.Enabled = TRUE
  729. ddlb_acount.AddItem( LastAcount)
  730. ddlb_acount.SelectItem( 1)
  731. ddlb_acount.Enabled = FALSE
  732. ins_LoginAcount = LastAcount
  733. IF cbx_saveuid.Checked THEN
  734. sle_uid.Text = publ_userid
  735. END IF
  736. END IF
  737. end event
  738. event closequery;call super::closequery;if lb_collect then return 1
  739. uo_fp.uf_abort()
  740. end event
  741. type cb_func from w_publ_base`cb_func within w_sys_login_q6
  742. boolean visible = false
  743. end type
  744. type cb_exit from w_publ_base`cb_exit within w_sys_login_q6
  745. integer x = 1262
  746. integer y = 920
  747. integer width = 398
  748. integer height = 124
  749. integer taborder = 70
  750. string text = "退 出"
  751. integer picsize = 16
  752. long color_bk_out = 16512494
  753. long fontcolor = 2324453
  754. end type
  755. event cb_exit::clicked;if_halt = 0
  756. close(parent)
  757. end event
  758. type cb_3 from commandbutton within w_sys_login_q6
  759. integer x = 1161
  760. integer y = 216
  761. integer width = 274
  762. integer taborder = 160
  763. boolean bringtotop = true
  764. string text = "修改密码"
  765. end type
  766. event clicked;//CALL SUPER::Clicked;
  767. //Long rslt = 0,ls_cnt = 0
  768. //String errmsg
  769. //String ls_changearg[],ls_para
  770. //s_rtuof srt2
  771. //
  772. //IF Long(em_frame_size.Text) <= 0 THEN
  773. // MessageBox('系统提示','数据包大小不合理,请重新设置!')
  774. // em_frame_size.SetFocus()
  775. // RETURN
  776. //ELSEIF Long(em_frame_size.Text) >= sys_maxframe_size THEN
  777. // MessageBox('系统提示','数据包大小不合理,超出大小上限:'+String(sys_maxframe_size))
  778. // em_frame_size.SetFocus()
  779. // RETURN
  780. //END IF
  781. //
  782. //IF sys_wsc.getstate() <> 7 THEN
  783. // cb_connect.TriggerEvent(Clicked!)
  784. // Open(w_waitforconnect)
  785. // Long ls_ifconsuc = 0
  786. // ls_ifconsuc = Message.DoubleParm
  787. // IF ls_ifconsuc = 0 THEN RETURN
  788. //END IF
  789. //
  790. //IF sys_wsc.getstate() <> 7 THEN
  791. // MessageBox('系统提示','连接失败,请先设置连接属性!')
  792. // RETURN
  793. //END IF
  794. //
  795. //IF Trim(sle_uid.Text) = '' THEN
  796. // sle_uid.Text = ''
  797. // MessageBox('系统提示','请输入用户名!')
  798. // sle_uid.SetFocus()
  799. // RETURN
  800. //END IF
  801. //
  802. //SetProfileString('ljprj_wiz.ini','longjoews','frame_size',em_frame_size.Text)
  803. //
  804. ////sys_wsc.send_login( sle_uid.text, sle_pwd.text, wf_getcomputername(), sys_wsc.ins_lasttime_num , blob(''))
  805. ////sys_wsc.triggerevent('ue_send')//发送命令
  806. //
  807. //s_rtlogin srt //登录返回结构
  808. //rslt = f_wait_s_rtlogin(sys_retritime,srt) //20秒内超时
  809. //IF rslt = 0 THEN
  810. // MessageBox('系统提示','服务器超时!')
  811. // RETURN
  812. //END IF
  813. //
  814. //IF NOT srt.empid > 0 THEN
  815. // MessageBox('系统提示',srt.msg)
  816. // sle_pwd.SelectText( 1, Len(sle_pwd.Text))
  817. // sle_pwd.SetFocus()
  818. // RETURN
  819. //ELSE
  820. // publ_operator = srt.empname
  821. // sys_power_issuper = (srt.ifsuper = 1)
  822. // sys_right = srt.rightstr
  823. // publ_userid = sle_uid.Text
  824. // sys_empid = srt.empid
  825. //
  826. // SetProfileString('ljprj_wiz.ini','longjoews','remotehost',sle_remotehost.Text)
  827. // SetProfileString('ljprj_wiz.ini','longjoews','remoteport',em_remoteport.Text)
  828. //
  829. // s_changepassword ls_cgpsw
  830. // Open(w_SYS_xgmm)
  831. // ls_cgpsw = Message.PowerObjectParm
  832. //
  833. // IF sys_wsc.getstate() <> 7 THEN
  834. // if_connected = 0
  835. // SetNull(ins_connectedtime)
  836. // RETURN
  837. // END IF
  838. // if_connected = 1
  839. // ins_connectedtime = Now()
  840. //
  841. // IF NOT ls_cgpsw.yn THEN RETURN
  842. //
  843. // ls_changearg[1] = String(sys_scid)
  844. // ls_changearg[2] = String(sys_empid)
  845. // ls_changearg[3] = ls_cgpsw.Password
  846. // ls_changearg[4] = 'arg_msg'
  847. // ls_changearg[5] = 'true'
  848. // ls_para = ''
  849. // f_createpara(ls_changearg[],ls_para)
  850. //
  851. // //sys_wsc.send_uof( 'uo_usergroup.changepsw', ls_para, blob(''))
  852. // sys_wsc.TriggerEvent('ue_send')
  853. // rslt = f_wait_s_rtuof(sys_retritime,srt2)
  854. // IF rslt = 0 THEN
  855. // MessageBox('系统提示','服务器超时!')
  856. // RETURN
  857. // END IF
  858. // IF srt2.rslt = 0 THEN
  859. // MessageBox('系统提示',srt2.msg)
  860. // ELSE
  861. // MessageBox (publ_operator,"你的密码更新操作成功,请从新登陆。",Exclamation!,OK!)
  862. // sle_uid.Text = ''
  863. // sle_pwd.Text = ''
  864. // sle_uid.SetFocus()
  865. // END IF
  866. //END IF
  867. //
  868. ////string ls_userid=''
  869. ////ls_userid=trim(sle_uid.TEXT)
  870. ////string ls_find_pass,ls_find_user,ls_powerstring
  871. ////long ls_empid
  872. ////
  873. //// SELECT u_user.username,
  874. //// u_user.empid,
  875. //// u_user.rightstring,
  876. //// u_user.psw
  877. //// INTO :ls_find_user,
  878. //// :ls_empid,
  879. //// :ls_powerstring,
  880. //// :ls_find_pass
  881. //// FROM u_user
  882. //// WHERE u_user.scid = :sys_scid
  883. //// and u_user.userid=:ls_userid ;
  884. ////
  885. ////if sqlca.sqlcode<>0 then
  886. //// if sqlca.sqlcode=100 then
  887. //// messagebox('系统提示','没有此用户名,请重新输入!')
  888. //// sle_uid.Text = ''
  889. //// sle_uid.SetFocus()
  890. //// RETURN
  891. //// else
  892. //// messagebox('系统提示','查询操作失败!')
  893. //// return
  894. //// end if
  895. ////end if
  896. ////
  897. ////if TRIM(f_psw_bczh(ls_find_pass,1,sys_power_key)) = TRIM(sle_pwd.text) then
  898. //// publ_operator=ls_find_user
  899. //// sys_power_issuper=( LOWER(TRIM(sle_uid.TEXT))=sys_super_id )
  900. //// sys_right=ls_powerstring
  901. ////else
  902. //// messagebox("系统提示", "用户口令不正确,请重新输入!")
  903. //// sle_pwd.Text = ''
  904. //// sle_pwd.SetFocus()
  905. //// RETURN
  906. ////end if
  907. ////
  908. ////
  909. ////s_changepassword ls_cgpsw
  910. ////OPEN(w_SYS_xgmm)
  911. ////ls_cgpsw=MESSAGE.PowerObjectParm
  912. ////IF NOT ls_cgpsw.yn THEN RETURN
  913. ////ls_find_pass=f_psw_bczh(trim(ls_cgpsw.password),0,sys_power_key)
  914. //// UPDATE u_user
  915. //// SET psw = :ls_find_pass
  916. //// WHERE u_user.empid = :ls_empid
  917. //// and u_user.scid=:sys_scid;
  918. ////if sqlca.sqlcode<>0 or sqlca.sqlnrows=0 then
  919. //// rollback;
  920. //// MessageBox (publ_operator,"更新数据操作失败!(请从试!)",Exclamation!,OK!)
  921. //// RETURN
  922. ////else
  923. //// commit;
  924. //// MessageBox (publ_operator,"你的密码更新操作成功,请从新登陆。",Exclamation!,OK!)
  925. //// sle_pwd.Text = ''
  926. //// sle_pwd.SetFocus()
  927. ////end if
  928. //////if_halt=0
  929. //////halt;
  930. //////Close(PARENT)
  931. ////
  932. ////
  933. //
  934. end event
  935. type em_remoteport from editmask within w_sys_login_q6
  936. integer x = 1097
  937. integer y = 1240
  938. integer width = 210
  939. integer height = 88
  940. integer taborder = 100
  941. boolean bringtotop = true
  942. integer textsize = -9
  943. integer weight = 400
  944. fontcharset fontcharset = gb2312charset!
  945. fontpitch fontpitch = variable!
  946. string facename = "宋体"
  947. long textcolor = 33554432
  948. string text = "7893"
  949. borderstyle borderstyle = stylelowered!
  950. string mask = "#########"
  951. end type
  952. type st_3 from statictext within w_sys_login_q6
  953. integer x = 928
  954. integer y = 1256
  955. integer width = 165
  956. integer height = 48
  957. boolean bringtotop = true
  958. integer textsize = -9
  959. integer weight = 400
  960. fontcharset fontcharset = gb2312charset!
  961. fontpitch fontpitch = variable!
  962. string facename = "宋体"
  963. long textcolor = 33554432
  964. long backcolor = 16777215
  965. string text = "端口:"
  966. boolean focusrectangle = false
  967. end type
  968. type sle_remotehost from singlelineedit within w_sys_login_q6
  969. integer x = 398
  970. integer y = 1240
  971. integer width = 411
  972. integer height = 88
  973. integer taborder = 90
  974. boolean bringtotop = true
  975. integer textsize = -9
  976. integer weight = 400
  977. fontcharset fontcharset = gb2312charset!
  978. fontpitch fontpitch = variable!
  979. string facename = "宋体"
  980. long textcolor = 33554432
  981. string text = "127.0.0.1"
  982. borderstyle borderstyle = stylelowered!
  983. end type
  984. type st_4 from statictext within w_sys_login_q6
  985. integer x = 119
  986. integer y = 1256
  987. integer width = 279
  988. integer height = 48
  989. boolean bringtotop = true
  990. integer textsize = -9
  991. integer weight = 400
  992. fontcharset fontcharset = gb2312charset!
  993. fontpitch fontpitch = variable!
  994. string facename = "宋体"
  995. long textcolor = 33554432
  996. long backcolor = 16777215
  997. string text = "服务器IP:"
  998. alignment alignment = right!
  999. boolean focusrectangle = false
  1000. end type
  1001. type st_msg from statictext within w_sys_login_q6
  1002. integer x = 402
  1003. integer y = 1368
  1004. integer width = 306
  1005. integer height = 48
  1006. boolean bringtotop = true
  1007. integer textsize = -9
  1008. integer weight = 400
  1009. fontcharset fontcharset = gb2312charset!
  1010. fontpitch fontpitch = variable!
  1011. string facename = "宋体"
  1012. long textcolor = 33554432
  1013. long backcolor = 16777215
  1014. boolean focusrectangle = false
  1015. end type
  1016. type st_5 from statictext within w_sys_login_q6
  1017. integer x = 119
  1018. integer y = 1368
  1019. integer width = 288
  1020. integer height = 48
  1021. boolean bringtotop = true
  1022. integer textsize = -9
  1023. integer weight = 400
  1024. fontcharset fontcharset = gb2312charset!
  1025. fontpitch fontpitch = variable!
  1026. string facename = "宋体"
  1027. long textcolor = 33554432
  1028. long backcolor = 16777215
  1029. string text = "连接状态:"
  1030. boolean focusrectangle = false
  1031. end type
  1032. type st_6 from statictext within w_sys_login_q6
  1033. integer x = 1445
  1034. integer y = 1228
  1035. integer width = 274
  1036. integer height = 72
  1037. boolean bringtotop = true
  1038. integer textsize = -9
  1039. integer weight = 400
  1040. fontcharset fontcharset = gb2312charset!
  1041. fontpitch fontpitch = variable!
  1042. string facename = "宋体"
  1043. long textcolor = 33554432
  1044. long backcolor = 134217739
  1045. boolean focusrectangle = false
  1046. end type
  1047. type st_7 from statictext within w_sys_login_q6
  1048. boolean visible = false
  1049. integer x = 64
  1050. integer y = 844
  1051. integer width = 343
  1052. integer height = 48
  1053. boolean bringtotop = true
  1054. integer textsize = -9
  1055. integer weight = 400
  1056. fontcharset fontcharset = gb2312charset!
  1057. fontpitch fontpitch = variable!
  1058. string facename = "宋体"
  1059. long textcolor = 33554432
  1060. long backcolor = 134217739
  1061. string text = "数据包大小:"
  1062. alignment alignment = right!
  1063. boolean focusrectangle = false
  1064. end type
  1065. type em_frame_size from editmask within w_sys_login_q6
  1066. boolean visible = false
  1067. integer x = 416
  1068. integer y = 836
  1069. integer width = 306
  1070. integer height = 76
  1071. integer taborder = 130
  1072. boolean bringtotop = true
  1073. integer textsize = -9
  1074. integer weight = 400
  1075. fontcharset fontcharset = gb2312charset!
  1076. fontpitch fontpitch = variable!
  1077. string facename = "宋体"
  1078. long textcolor = 33554432
  1079. string text = "1000"
  1080. borderstyle borderstyle = stylelowered!
  1081. string mask = "#########"
  1082. end type
  1083. type st_8 from statictext within w_sys_login_q6
  1084. boolean visible = false
  1085. integer x = 119
  1086. integer y = 928
  1087. integer width = 288
  1088. integer height = 48
  1089. boolean bringtotop = true
  1090. integer textsize = -9
  1091. integer weight = 400
  1092. fontcharset fontcharset = gb2312charset!
  1093. fontpitch fontpitch = variable!
  1094. string facename = "宋体"
  1095. long textcolor = 33554432
  1096. long backcolor = 134217739
  1097. string text = "重连次数:"
  1098. alignment alignment = right!
  1099. boolean focusrectangle = false
  1100. end type
  1101. type em_2 from editmask within w_sys_login_q6
  1102. boolean visible = false
  1103. integer x = 416
  1104. integer y = 920
  1105. integer width = 306
  1106. integer height = 76
  1107. integer taborder = 140
  1108. boolean bringtotop = true
  1109. integer textsize = -9
  1110. integer weight = 400
  1111. fontcharset fontcharset = gb2312charset!
  1112. fontpitch fontpitch = variable!
  1113. string facename = "宋体"
  1114. long textcolor = 33554432
  1115. string text = "3"
  1116. borderstyle borderstyle = stylelowered!
  1117. string mask = "###"
  1118. end type
  1119. type cb_ok from uo_imflatbutton within w_sys_login_q6
  1120. integer x = 457
  1121. integer y = 920
  1122. integer width = 398
  1123. integer height = 124
  1124. integer taborder = 50
  1125. boolean bringtotop = true
  1126. string text = "确 定"
  1127. string normalpicname = "ok.bmp"
  1128. integer picsize = 16
  1129. long color_bk_out = 16512494
  1130. long fontcolor = 2324453
  1131. end type
  1132. event clicked;call super::clicked;uid = Trim(sle_uid.Text)
  1133. IF uid = '' THEN
  1134. sle_uid.Text = ''
  1135. MessageBox('系统提示','请输入用户名!')
  1136. sle_uid.SetFocus()
  1137. RETURN
  1138. END IF
  1139. acount = Trim(ddlb_acount.Text)
  1140. IF sys_wsc.getstate() <> 7 THEN
  1141. cb_connect.TriggerEvent(Clicked!)
  1142. IF sys_wsc.getstate() <> 7 THEN RETURN
  1143. END IF
  1144. s_msg.framehead = 6
  1145. s_msg.frame_str[1] = uid
  1146. s_msg.frame_str[2] = f_psw_bczh(Trim(sle_pwd.Text),0,sys_power_key) //加密
  1147. s_msg.frame_str[3] = acount
  1148. s_msg.frame_str[4] = HostName
  1149. s_msg.frame_str[5] = IP
  1150. IF wf_sendmsg(5) = 1 THEN
  1151. // 验证
  1152. Transaction db_Transaction
  1153. db_Transaction = CREATE Transaction
  1154. db_Transaction.DBMS = sys_DBMS
  1155. db_Transaction.Database = sys_Database
  1156. db_Transaction.UserID = sys_userid
  1157. db_Transaction.DBPass = f_psw_bczh(sys_dbpass,1,sys_power_key)
  1158. db_Transaction.LogID = sys_LoginID
  1159. db_Transaction.LogPass = f_psw_bczh(sys_LoginPwd,1,sys_power_key)
  1160. db_Transaction.ServerName = sys_ServerName
  1161. db_Transaction.DBParm = f_psw_bczh(sys_dbparm,1,sys_power_key)
  1162. CONNECT USING db_Transaction;
  1163. String ls_uid
  1164. ls_uid = Trim(sle_uid.Text)
  1165. Long dlflag
  1166. SELECT dlflag
  1167. INTO :dlflag
  1168. FROM u_user
  1169. Where UserID = :ls_uid USING db_Transaction;
  1170. IF db_Transaction.SQLCode <> 0 THEN dlflag = 0
  1171. IF dlflag = 1 OR dlflag = 2 THEN
  1172. Blob lb_data
  1173. SELECTBLOB fingers INTO :lb_data FROM u_user_fp Where UserID = :ls_uid USING db_Transaction;
  1174. IF db_Transaction.SQLCode <> 0 THEN
  1175. MessageBox('错误', '获取指纹信息失败 ' + sqlca.SQLErrText, StopSign!, OK! )
  1176. wf_lock(FALSE)
  1177. RETURN
  1178. END IF
  1179. String ls_msg
  1180. Long i
  1181. wf_lock(TRUE)
  1182. Open(w_sys_wait_fp)
  1183. w_sys_wait_fp.Show()
  1184. w_sys_wait_fp.wf_set_msg('正在验证指纹...')
  1185. FOR i = 1 TO 3
  1186. IF uo_fp.uf_verifyfingerprint(lb_data, ls_msg) <> 1 THEN
  1187. w_sys_wait_fp.wf_set_msg(ls_msg + ',还有重复次数' + String(3 - i) + '次')
  1188. IF i = 3 THEN
  1189. MessageBox('提示',ls_msg)
  1190. w_sys_wait_fp.Hide()
  1191. Close(w_sys_wait_fp)
  1192. wf_lock(FALSE)
  1193. RETURN
  1194. END IF
  1195. ELSE
  1196. EXIT
  1197. END IF
  1198. NEXT
  1199. w_sys_wait_fp.Hide()
  1200. Close(w_sys_wait_fp)
  1201. wf_lock(FALSE)
  1202. END IF
  1203. DISCONNECT USING db_Transaction;
  1204. if_halt = 1
  1205. Close(PARENT)
  1206. END IF
  1207. end event
  1208. type cb_connect from uo_imflatbutton within w_sys_login_q6
  1209. integer x = 1394
  1210. integer y = 1204
  1211. integer width = 343
  1212. integer height = 108
  1213. integer taborder = 110
  1214. boolean bringtotop = true
  1215. string text = "连接"
  1216. long color_bk_out = 16512494
  1217. long fontcolor = 2324453
  1218. end type
  1219. event clicked;call super::clicked;IF Long(em_frame_size.Text) <= 0 THEN
  1220. MessageBox('系统提示','数据包大小不合理,请重新设置!')
  1221. em_frame_size.SetFocus()
  1222. RETURN
  1223. ELSEIF Long(em_frame_size.Text) >= sys_maxframe_size THEN
  1224. MessageBox('系统提示','数据包大小不合理,超出大小上限:'+String(sys_maxframe_size))
  1225. em_frame_size.SetFocus()
  1226. RETURN
  1227. END IF
  1228. sys_wsc.ConnectToServer( sle_remotehost.Text, Long(em_remoteport.Text))
  1229. Open(w_waitforconnect)
  1230. IF Message.DoubleParm = 0 THEN
  1231. RETURN
  1232. END IF
  1233. //wf_acceptmsg()
  1234. s_msg.FrameHead = I_ACOUNT
  1235. IF wf_sendmsg(0) = 1 THEN
  1236. StatusMsg = "请输入用户名,密码登陆!"
  1237. END IF
  1238. wf_write_ini()
  1239. end event
  1240. type cb_disconnect from uo_imflatbutton within w_sys_login_q6
  1241. integer x = 1742
  1242. integer y = 1204
  1243. integer width = 343
  1244. integer height = 108
  1245. integer taborder = 120
  1246. boolean bringtotop = true
  1247. boolean enabled = false
  1248. string text = "断开"
  1249. long color_bk_out = 16512494
  1250. long fontcolor = 2324453
  1251. end type
  1252. event clicked;call super::clicked;sys_wsc.Object.Close()
  1253. //sle_remotehost.Enabled = TRUE
  1254. //em_remoteport.Enabled = TRUE
  1255. //cb_connect.Enabled = TRUE
  1256. //cb_disconnect.Enabled = FALSE
  1257. //em_frame_size.Enabled = TRUE
  1258. //em_2.Enabled = TRUE
  1259. //sle_autodistime.Enabled = TRUE
  1260. end event
  1261. type st_9 from statictext within w_sys_login_q6
  1262. boolean visible = false
  1263. integer x = 9
  1264. integer y = 1008
  1265. integer width = 398
  1266. integer height = 48
  1267. boolean bringtotop = true
  1268. integer textsize = -9
  1269. integer weight = 400
  1270. fontcharset fontcharset = gb2312charset!
  1271. fontpitch fontpitch = variable!
  1272. string facename = "宋体"
  1273. long textcolor = 33554432
  1274. long backcolor = 134217739
  1275. string text = "自动断开时间:"
  1276. alignment alignment = right!
  1277. boolean focusrectangle = false
  1278. end type
  1279. type sle_autodistime from singlelineedit within w_sys_login_q6
  1280. boolean visible = false
  1281. integer x = 416
  1282. integer y = 1008
  1283. integer width = 306
  1284. integer height = 76
  1285. integer taborder = 150
  1286. boolean bringtotop = true
  1287. integer textsize = -9
  1288. integer weight = 400
  1289. fontcharset fontcharset = gb2312charset!
  1290. fontpitch fontpitch = variable!
  1291. string facename = "宋体"
  1292. long textcolor = 33554432
  1293. string text = "10"
  1294. borderstyle borderstyle = stylelowered!
  1295. end type
  1296. type p_ip from picture within w_sys_login_q6
  1297. integer x = 814
  1298. integer y = 1248
  1299. integer width = 73
  1300. integer height = 64
  1301. boolean bringtotop = true
  1302. boolean originalsize = true
  1303. string picturename = "VCRNext!"
  1304. boolean focusrectangle = false
  1305. end type
  1306. event clicked;IF NOT sle_remotehost.Enabled THEN RETURN
  1307. s_ip_ini arg_s_ini,arg_s_return
  1308. arg_s_ini.arg_x = PARENT.X + sle_remotehost.X
  1309. arg_s_ini.arg_y = PARENT.Y + sle_remotehost.Y + sle_remotehost.Height + 10
  1310. OpenWithParm(w_ddd_ip,arg_s_ini)
  1311. arg_s_return = Message.PowerObjectParm
  1312. IF arg_s_return.ip = '' THEN RETURN
  1313. sle_remotehost.Text = arg_s_return.ip
  1314. em_remoteport.Text = arg_s_return.port
  1315. end event
  1316. type cbx_saveuid from checkbox within w_sys_login_q6
  1317. integer x = 658
  1318. integer y = 824
  1319. integer width = 530
  1320. integer height = 64
  1321. boolean bringtotop = true
  1322. integer textsize = -9
  1323. integer weight = 400
  1324. fontcharset fontcharset = gb2312charset!
  1325. fontpitch fontpitch = variable!
  1326. string facename = "宋体"
  1327. long textcolor = 134217741
  1328. long backcolor = 16777215
  1329. string text = "记住用户名"
  1330. end type
  1331. event constructor;//this.backcolor = rgb(220,237,247)
  1332. this.textcolor = rgb(229,119,35)
  1333. end event
  1334. type cb_chc from uo_imflatbutton within w_sys_login_q6
  1335. integer x = 859
  1336. integer y = 920
  1337. integer width = 398
  1338. integer height = 124
  1339. integer taborder = 60
  1340. boolean bringtotop = true
  1341. string text = "更换帐套"
  1342. long color_bk_out = 16512494
  1343. long fontcolor = 2324453
  1344. end type
  1345. event clicked;call super::clicked;uid = Trim(sle_uid.Text)
  1346. IF uid = '' THEN
  1347. sle_uid.Text = ''
  1348. MessageBox('系统提示','请输入用户名!')
  1349. sle_uid.SetFocus()
  1350. RETURN
  1351. END IF
  1352. IF sys_wsc.getstate() <> 7 THEN
  1353. cb_connect.TriggerEvent(Clicked!)
  1354. IF sys_wsc.getstate() <> 7 THEN RETURN
  1355. END IF
  1356. s_msg.FrameHead = I_RELOGINREQ
  1357. s_msg.frame_str[1] = uid
  1358. s_msg.frame_str[2] = f_psw_bczh(Trim(sle_pwd.Text),0,sys_power_key) //加密
  1359. s_msg.frame_str[3] = ""
  1360. s_msg.frame_str[4] = HostName
  1361. s_msg.frame_str[5] = IP
  1362. IF wf_sendmsg(5) = 1 THEN
  1363. StatusMsg = "请选择帐套!"
  1364. END IF
  1365. end event
  1366. type st_11 from statictext within w_sys_login_q6
  1367. integer x = 709
  1368. integer y = 1368
  1369. integer width = 288
  1370. integer height = 48
  1371. boolean bringtotop = true
  1372. integer textsize = -9
  1373. integer weight = 400
  1374. fontcharset fontcharset = gb2312charset!
  1375. fontpitch fontpitch = variable!
  1376. string facename = "宋体"
  1377. long textcolor = 33554432
  1378. long backcolor = 16777215
  1379. string text = "计算机名:"
  1380. boolean focusrectangle = false
  1381. end type
  1382. type st_name from statictext within w_sys_login_q6
  1383. integer x = 992
  1384. integer y = 1368
  1385. integer width = 402
  1386. integer height = 48
  1387. boolean bringtotop = true
  1388. integer textsize = -9
  1389. integer weight = 400
  1390. fontcharset fontcharset = gb2312charset!
  1391. fontpitch fontpitch = variable!
  1392. string facename = "宋体"
  1393. long textcolor = 33554432
  1394. long backcolor = 16777215
  1395. boolean focusrectangle = false
  1396. end type
  1397. type st_status from statictext within w_sys_login_q6
  1398. integer y = 1100
  1399. integer width = 1797
  1400. integer height = 56
  1401. boolean bringtotop = true
  1402. integer textsize = -9
  1403. integer weight = 400
  1404. fontcharset fontcharset = gb2312charset!
  1405. fontpitch fontpitch = variable!
  1406. string facename = "宋体"
  1407. long textcolor = 33554432
  1408. long backcolor = 16777215
  1409. string text = "none"
  1410. boolean focusrectangle = false
  1411. end type
  1412. type gb_1 from groupbox within w_sys_login_q6
  1413. integer x = 78
  1414. integer y = 1188
  1415. integer width = 1262
  1416. integer height = 168
  1417. integer textsize = -9
  1418. integer weight = 400
  1419. fontcharset fontcharset = gb2312charset!
  1420. fontpitch fontpitch = variable!
  1421. string facename = "宋体"
  1422. long textcolor = 33554432
  1423. long backcolor = 16777215
  1424. string text = "服务器信息"
  1425. end type
  1426. type r_1 from rectangle within w_sys_login_q6
  1427. long linecolor = 134217739
  1428. linestyle linestyle = transparent!
  1429. integer linethickness = 4
  1430. long fillcolor = 16777215
  1431. integer y = 1180
  1432. integer width = 2085
  1433. integer height = 280
  1434. end type
  1435. type ln_2 from line within w_sys_login_q6
  1436. long linecolor = 268435456
  1437. integer linethickness = 4
  1438. integer beginx = -9
  1439. integer beginy = 1100
  1440. integer endx = 2002
  1441. integer endy = 1100
  1442. end type
  1443. type ln_3 from line within w_sys_login_q6
  1444. long linecolor = 16777215
  1445. integer linethickness = 4
  1446. integer beginx = -9
  1447. integer beginy = 1104
  1448. integer endx = 2002
  1449. integer endy = 1104
  1450. end type
  1451. type ln_4 from line within w_sys_login_q6
  1452. long linecolor = 268435456
  1453. integer linethickness = 4
  1454. integer beginx = -9
  1455. integer beginy = 1172
  1456. integer endx = 2002
  1457. integer endy = 1172
  1458. end type
  1459. type ln_5 from line within w_sys_login_q6
  1460. long linecolor = 16777215
  1461. integer linethickness = 4
  1462. integer beginx = -9
  1463. integer beginy = 1176
  1464. integer endx = 2002
  1465. integer endy = 1176
  1466. end type
  1467. type p_1 from picture within w_sys_login_q6
  1468. integer width = 2240
  1469. integer height = 360
  1470. boolean originalsize = true
  1471. string picturename = "graphics\bar_dl_q6.bmp"
  1472. boolean focusrectangle = false
  1473. end type
  1474. type sle_pwd from singlelineedit within w_sys_login_q6
  1475. event key pbm_keydown
  1476. integer x = 654
  1477. integer y = 716
  1478. integer width = 1015
  1479. integer height = 84
  1480. integer taborder = 40
  1481. boolean bringtotop = true
  1482. integer textsize = -10
  1483. integer weight = 400
  1484. fontcharset fontcharset = gb2312charset!
  1485. fontpitch fontpitch = variable!
  1486. string facename = "宋体"
  1487. long textcolor = 33554432
  1488. boolean autohscroll = false
  1489. boolean password = true
  1490. integer limit = 20
  1491. borderstyle borderstyle = stylelowered!
  1492. end type
  1493. event key;IF Key = KeyEnter! OR Key = KeyDownArrow! THEN //
  1494. cb_ok.PostEvent(Clicked!)
  1495. RETURN 0
  1496. END IF
  1497. end event
  1498. type sle_uid from singlelineedit within w_sys_login_q6
  1499. event dwnkey pbm_keydown
  1500. integer x = 654
  1501. integer y = 612
  1502. integer width = 1015
  1503. integer height = 84
  1504. integer taborder = 30
  1505. boolean bringtotop = true
  1506. integer textsize = -10
  1507. integer weight = 400
  1508. fontcharset fontcharset = gb2312charset!
  1509. fontpitch fontpitch = variable!
  1510. string facename = "宋体"
  1511. long textcolor = 33554432
  1512. borderstyle borderstyle = stylelowered!
  1513. end type
  1514. event dwnkey;IF KeyDown(KeyEnter!) OR KeyDown(KeyDownArrow!) OR KeyDown(KeyTab!) THEN
  1515. // keybd_event ( 9, 0, 0 , 0 ) // 按下tab
  1516. // keybd_event ( 9, 0, 2, 0 ) // 释放tab
  1517. // RETURN 1
  1518. sle_pwd.setfocus( )
  1519. END IF
  1520. end event
  1521. type ddlb_acount from dropdownlistbox within w_sys_login_q6
  1522. event key pbm_dwnkey
  1523. integer x = 654
  1524. integer y = 508
  1525. integer width = 1015
  1526. integer height = 936
  1527. integer taborder = 10
  1528. boolean bringtotop = true
  1529. integer textsize = -9
  1530. integer weight = 400
  1531. fontcharset fontcharset = gb2312charset!
  1532. fontpitch fontpitch = variable!
  1533. string facename = "宋体"
  1534. long textcolor = 33554432
  1535. boolean enabled = false
  1536. boolean sorted = false
  1537. boolean vscrollbar = true
  1538. borderstyle borderstyle = stylelowered!
  1539. end type
  1540. event selectionchanged;IF KeyDown(KeyEnter!) OR KeyDown(KeyDownArrow!) THEN //
  1541. keybd_event ( 9, 0, 0 , 0 ) // 按下tab
  1542. keybd_event ( 9, 0, 2, 0 ) // 释放tab
  1543. RETURN 1
  1544. END IF
  1545. end event
  1546. type cb_2 from uo_imflatbutton within w_sys_login_q6
  1547. integer x = 1669
  1548. integer y = 920
  1549. integer width = 128
  1550. integer height = 124
  1551. integer taborder = 80
  1552. boolean bringtotop = true
  1553. string text = "︾"
  1554. integer picsize = 16
  1555. long color_bk_out = 16512494
  1556. long fontcolor = 2324453
  1557. end type
  1558. event clicked;call super::clicked;IF sys_wsc.getstate() <> 7 THEN RETURN
  1559. if_openprp = 1 - if_openprp
  1560. PARENT.TriggerEvent('ue_refresh_prpstaus')
  1561. end event
  1562. type st_version from statictext within w_sys_login_q6
  1563. integer x = 1449
  1564. integer y = 408
  1565. integer width = 699
  1566. integer height = 64
  1567. boolean bringtotop = true
  1568. integer textsize = -9
  1569. integer weight = 400
  1570. fontcharset fontcharset = gb2312charset!
  1571. fontpitch fontpitch = variable!
  1572. string facename = "宋体"
  1573. long textcolor = 33554432
  1574. long backcolor = 16777215
  1575. string text = "网络版"
  1576. alignment alignment = right!
  1577. boolean focusrectangle = false
  1578. end type
  1579. event constructor;//this.backcolor = rgb(220,237,247)
  1580. this.textcolor = rgb(229,119,35)
  1581. end event
  1582. type st_1 from statictext within w_sys_login_q6
  1583. integer x = 361
  1584. integer y = 524
  1585. integer width = 288
  1586. integer height = 60
  1587. boolean bringtotop = true
  1588. integer textsize = -9
  1589. integer weight = 400
  1590. fontcharset fontcharset = gb2312charset!
  1591. fontpitch fontpitch = variable!
  1592. string facename = "宋体"
  1593. long textcolor = 134217741
  1594. long backcolor = 16777215
  1595. string text = "帐 套:"
  1596. boolean focusrectangle = false
  1597. end type
  1598. event constructor;this.textcolor = rgb(229,119,35)
  1599. end event
  1600. type st_2 from statictext within w_sys_login_q6
  1601. integer x = 361
  1602. integer y = 624
  1603. integer width = 288
  1604. integer height = 60
  1605. boolean bringtotop = true
  1606. integer textsize = -9
  1607. integer weight = 400
  1608. fontcharset fontcharset = gb2312charset!
  1609. fontpitch fontpitch = variable!
  1610. string facename = "宋体"
  1611. long textcolor = 134217741
  1612. long backcolor = 16777215
  1613. string text = "用 户 名:"
  1614. boolean focusrectangle = false
  1615. end type
  1616. event constructor;this.textcolor = rgb(229,119,35)
  1617. end event
  1618. type st_10 from statictext within w_sys_login_q6
  1619. integer x = 361
  1620. integer y = 728
  1621. integer width = 288
  1622. integer height = 60
  1623. boolean bringtotop = true
  1624. integer textsize = -9
  1625. integer weight = 400
  1626. fontcharset fontcharset = gb2312charset!
  1627. fontpitch fontpitch = variable!
  1628. string facename = "宋体"
  1629. long textcolor = 134217741
  1630. long backcolor = 16777215
  1631. string text = "登录密码:"
  1632. boolean focusrectangle = false
  1633. end type
  1634. event constructor;this.textcolor = rgb(229,119,35)
  1635. end event