$PBExportHeader$uo_html_editor.sru forward global type uo_html_editor from userobject end type type pb_underline from picturebutton within uo_html_editor end type type pb_textcolor from picturebutton within uo_html_editor end type type pb_numbers from picturebutton within uo_html_editor end type type pb_bullets from picturebutton within uo_html_editor end type type pb_italic from picturebutton within uo_html_editor end type type pb_outdent from picturebutton within uo_html_editor end type type pb_bold from picturebutton within uo_html_editor end type type pb_indent from picturebutton within uo_html_editor end type type pb_left from picturebutton within uo_html_editor end type type pb_center from picturebutton within uo_html_editor end type type pb_right from picturebutton within uo_html_editor end type type pb_full from picturebutton within uo_html_editor end type type pb_line from picturebutton within uo_html_editor end type type pb_hyperlink from picturebutton within uo_html_editor end type type pb_picture from picturebutton within uo_html_editor end type type ddlb_fontsize from dropdownlistbox within uo_html_editor end type type ddlb_font from dropdownlistbox within uo_html_editor end type type ole_web from olecustomcontrol within uo_html_editor end type type bitmapinfoheader from structure within uo_html_editor end type type bitmapfileheader from structure within uo_html_editor end type type bitmapinfo from structure within uo_html_editor end type end forward type bitmapinfoheader from structure long bisize long biwidth long biheight integer biplanes integer bibitcount long bicompression long bisizeimage long bixpelspermeter long biypelspermeter long biclrused long biclrimportant end type type bitmapfileheader from structure integer bftype long bfsize integer bfreserved1 integer bfreserved2 long bfoffbits end type type bitmapinfo from structure bitmapinfoheader bmiheader unsignedlong bmicolors[] end type global type uo_html_editor from userobject integer width = 3346 integer height = 1812 long backcolor = 16777215 string text = "none" long tabtextcolor = 33554432 long picturemaskcolor = 536870912 event size pbm_size event ue_afterinit ( ) event getfocus pbm_bnsetfocus event losefocus pbm_bnkillfocus pb_underline pb_underline pb_textcolor pb_textcolor pb_numbers pb_numbers pb_bullets pb_bullets pb_italic pb_italic pb_outdent pb_outdent pb_bold pb_bold pb_indent pb_indent pb_left pb_left pb_center pb_center pb_right pb_right pb_full pb_full pb_line pb_line pb_hyperlink pb_hyperlink pb_picture pb_picture ddlb_fontsize ddlb_fontsize ddlb_font ddlb_font ole_web ole_web end type global uo_html_editor uo_html_editor type prototypes function string getfontfaces() library "pbgdiex.dll" alias for "getfontfaces;Ansi" Function ulong CameraSubArea() LIBRARY "CameraDll.dll" alias for "CameraSubArea;Ansi" FUNCTION Boolean OpenClipboard(ULong hWndNewOwner) LIBRARY "user32.dll" Alias For "OpenClipboard;Ansi" FUNCTION Boolean CloseClipboard() LIBRARY "user32.dll" Alias For "CloseClipboard;Ansi" FUNCTION ULong GetClipboardData(ulong wFormat) LIBRARY "user32.dll" Alias For "GetClipboardData;Ansi" FUNCTION ulong IsClipboardFormatAvailable(ulong wFormat) LIBRARY "user32.dll" Alias For "IsClipboardFormatAvailable;Ansi" FUNCTION ULong GetDesktopWindow() LIBRARY "user32.dll" Alias For "GetDesktopWindow;Ansi" FUNCTION ULong GetDC(ULong hWnd) LIBRARY "user32.dll" Alias For "GetDC;Ansi" FUNCTION ULong CreateCompatibleDC(ULong hdc) LIBRARY "gdi32.dll" Alias For "CreateCompatibleDC;Ansi" FUNCTION ULong SelectObject(ULong hdc,ULong hgdiobj) LIBRARY "gdi32.dll" Alias For "SelectObject;Ansi" FUNCTION Int GetDIBits(ULong hdc,ULong hbmp,UInt uStartScan,UInt cScanLines,REF Blob lpvBits,REF bitmapinfo lpbi,UInt uUsage) LIBRARY "gdi32.dll" alias for "GetDIBits;Ansi" FUNCTION Int GetDIBits(ULong hdc,ULong hbmp,UInt uStartScan,UInt cScanLines, ULong lpvBits, REF bitmapinfo lpbi, UInt uUsage) LIBRARY "gdi32.dll" alias for "GetDIBits;Ansi" SUBROUTINE CopyBitmapFileHeader(REF Blob Destination, bitmapfileheader Source,Long Length) LIBRARY "kernel32.dll" ALIAS FOR "RtlMoveMemory;Ansi" SUBROUTINE CopyBitmapInfo(REF Blob Destination, bitmapinfo Source,Long Length) LIBRARY "kernel32.dll" ALIAS FOR "RtlMoveMemory" FUNCTION Boolean DeleteDC(ULong hdc) LIBRARY "gdi32.dll" Alias For "DeleteDC;Ansi" FUNCTION Int ReleaseDC(ULong hWnd,ULong hdc) LIBRARY "user32.dll" Alias For "ReleaseDC;Ansi" FUNCTION ULong CreateFile(String lpFileName, ULong dwDesiredAccess, ULong dwShareMode, ULong lpSecurityAttributes, ULong dwCreationDisposition, & ULong dwFlagsAndAttributes, ULong hTemplateFile ) LIBRARY "kernel32.dll" ALIAS FOR "CreateFileA;Ansi" FUNCTION Boolean WriteFile(ULong hFile,Blob lpBuffer,ULong nNumberOfBytesToWrite,REF ULong lpNumberOfBytesWritten, & ULong lpOverlapped) LIBRARY "kernel32.dll" Alias For "WriteFile;Ansi" FUNCTION Boolean CloseHandle(ULong hObject) LIBRARY "kernel32.dll" Alias For "CloseHandle;Ansi" FUNCTION Integer GlobalAddAtom(ref string lpString) LIBRARY "kernel32.dll" ALIAS FOR "GlobalAddAtomA" FUNCTION ulong RegisterHotKey(ulong hwnd,ulong id,ulong fsModifiers,ulong vk) LIBRARY "user32.dll" FUNCTION ulong UnregisterHotKey( ulong hWnd, ulong id ) LIBRARY "user32.dll" end prototypes type variables boolean ib_shown = false long sys_atomid,sys_handle constant integer MOD_ALT = 1 //ALT键 constant integer MOD_CONTROL = 2 //CTRL键 constant integer MOD_SHIFT = 4 //SHIFT键 string fjfilepathname = 'fjtemp' end variables forward prototypes public subroutine uf_refreshtoolbar () public subroutine uf_addfonts () public function string uf_gethtml () public function string uf_gettext () public function integer uf_sethtml (string arg_html) public subroutine uf_settext (string arg_text) public function integer uf_test () public function integer uf_setbackground (string arg_path) public function string uf_style_jianyue () public function string uf_style_shuangwu () public function string uf_style_zidingyi () public subroutine uf_setcontenteditable (string arg_set) public subroutine uf_navigate (string arg_path) public subroutine uf_setreadonly () public subroutine uf_getfont () public subroutine uf_setfont () public subroutine wf_picturetofile () end prototypes event size;if this.width < 2500 then this.hscrollbar = true ole_web.width = 2500 else this.hscrollbar = false ole_web.width = this.width end if if this.height < 600 then this.vscrollbar = true ole_web.height = 600 - ole_web.y else this.vscrollbar = false ole_web.height = this.height - ole_web.y end if end event event losefocus;// unRegisterHotKey(Handle(this), atomid) //messagebox("","eeew") //IF not IsNull(ClassName(GetFocus())) THEN // messagebox("",string(ClassName(GetFocus()))) //end if //messagebox("","lose") end event public subroutine uf_refreshtoolbar ();string ls_fontname long ll_fontsize boolean lb_bold,lb_italic,lb_underline, lb_numbers, lb_bullets, lb_left, lb_center, lb_right, lb_full ls_fontname = string(ole_web.object.document.queryCommandValue("FontName")) long ll_index ll_index = ddlb_font.finditem(ls_fontname, 1) if ll_index > 0 then ddlb_font.selectitem(ll_index) end if ll_fontsize = long(ole_web.object.document.queryCommandValue("FontSize")) ddlb_fontsize.selectitem(ll_fontsize) lb_bold = ole_web.object.document.queryCommandState("Bold") lb_italic = ole_web.object.document.queryCommandState("Italic") lb_underline = ole_web.object.document.queryCommandState("Underline") lb_numbers = ole_web.object.document.queryCommandState("InsertOrderedList") lb_bullets = ole_web.object.document.queryCommandState("InsertUnorderedList") lb_left = ole_web.object.document.queryCommandState("JustifyLeft") lb_center = ole_web.object.document.queryCommandState("JustifyCenter") lb_right = ole_web.object.document.queryCommandState("JustifyRight") lb_full = ole_web.object.document.queryCommandState("JustifyFull") if lb_bold then pb_bold.picturename = pb_bold.tag else pb_bold.picturename = pb_bold.disabledname end if if lb_italic then pb_italic.picturename = pb_italic.tag else pb_italic.picturename = pb_italic.disabledname end if if lb_underline then pb_underline.picturename = pb_underline.tag else pb_underline.picturename = pb_underline.disabledname end if if lb_numbers then pb_numbers.picturename = pb_numbers.tag else pb_numbers.picturename = pb_numbers.disabledname end if if lb_bullets then pb_bullets.picturename = pb_bullets.tag else pb_bullets.picturename = pb_bullets.disabledname end if if lb_left then pb_left.picturename = pb_left.tag else pb_left.picturename = pb_left.disabledname end if if lb_center then pb_center.picturename = pb_center.tag else pb_center.picturename = pb_center.disabledname end if if lb_right then pb_right.picturename = pb_right.tag else pb_right.picturename = pb_right.disabledname end if if lb_full then pb_full.picturename = pb_full.tag else pb_full.picturename = pb_full.disabledname end if end subroutine public subroutine uf_addfonts ();string ls_fonts long ll_num1, ll_num2 ls_fonts = getfontfaces() if isnull(ls_fonts) OR len(ls_fonts) <= 0 then return ll_num1 = 1 ll_num2 = pos(ls_fonts, '~t', ll_num1) do while ll_num2 > 0 ddlb_font.additem(trim(mid(ls_fonts, ll_num1, ll_num2 - ll_num1))) ll_num1 = ll_num2 + 1 ll_num2 = pos(ls_fonts, '~t', ll_num1) loop end subroutine public function string uf_gethtml ();string rslt //if isnull(ole_web.object) then // rslt='' // goto ext //end if //if isnull(ole_web.object.document) then // rslt='' // goto ext //end if //if isnull(ole_web.object.document.body) then // rslt='' // goto ext //end if do while isnull(ole_web.object.document.body) // yield() rslt='' goto ext loop rslt=ole_web.object.document.body.innerHtml ext: return rslt end function public function string uf_gettext ();string rslt rslt=ole_web.object.document.body.innerText //messagebox('',rslt) return rslt end function public function integer uf_sethtml (string arg_html);// //if isnull(ole_web.object) then // arg_html='' // goto ext //end if //if isnull(ole_web.object.document) then // arg_html='' // goto ext //end if //if isnull(ole_web.object.document.body) then // arg_html='' // goto ext //end if //messagebox('','1'+arg_html) do while isnull(ole_web.object.document.body) yield() loop //ext: ole_web.object.document.body.innerhtml = arg_html //messagebox('','2'+string(ole_web.object.document.body.innerhtml)) return 1 end function public subroutine uf_settext (string arg_text);// ole_web.object.document.body.innerText=arg_text end subroutine public function integer uf_test ();string body //body=''& //+''& //+''& //+''& //+''& //+''& //+''& //+'
'& //+'
'& //+'
ghnvbnvb
'& //+'
vbnvbn
'& //+'
vbnvbnv
'& //+'
vbnvbv
'& //+'
vbvvnvbnvbn
'& //+'
vbnbnvbnvbn
'& //+'
vbnvbnbnvnvnv
'& //+'
 
' // body=uf_style_jianyue() ole_web.object.document.body.innerhtml=body ole_web.object.document.body.contentEditable='false' return 1 end function public function integer uf_setbackground (string arg_path); ole_web.object.document.body.background=arg_path //messagebox('',a) return 1 end function public function string uf_style_jianyue ();string body body=''& +''& +''& +''& +'
'& +'
'& +'
 
'& +'
 
'& +'
'& +'
'& +'
' return body end function public function string uf_style_shuangwu ();string body body='' return body end function public function string uf_style_zidingyi ();string body body=''& +''& +''& +''& +''& +''& +''& +''& +'
'& +'
'& +'
 
'& +'
 
'& +'
'& +'
'& +'
'& +'
' return body end function public subroutine uf_setcontenteditable (string arg_set);ole_web.object.document.body.contentEditable=arg_set end subroutine public subroutine uf_navigate (string arg_path);ole_web.object.document.ExecCommand("EditMode", true, 1) ole_web.object.document.ExecCommand("LiveResize", true, 1) //if ole_web.object.url='about:black' then ole_web.object.Document.Write("") //end if ole_web.object.Navigate(arg_path) ole_web.object.document.ExecCommand("EditMode", false, 0) ole_web.object.document.ExecCommand("LiveResize", false, 0) //string body //body=ole_web.object.document.body.innerHtml // //messagebox('',body) end subroutine public subroutine uf_setreadonly ();pb_underline.Visible = False pb_textcolor.Visible = False pb_numbers.Visible = False pb_bullets.Visible = False pb_italic.Visible = False pb_outdent.Visible = False pb_bold.Visible = False pb_indent.Visible = False pb_left.Visible = False pb_center.Visible = False pb_right.Visible = False pb_full.Visible = False pb_line.Visible = False pb_hyperlink.Visible = False pb_picture.Visible = False ddlb_fontsize.Visible = False ddlb_font.Visible = False ole_web.y = 0 ole_web.Object.document.ExecCommand("BrowseMode", False, 0) ole_web.Object.document.ExecCommand("LiveResize", False, 0) TriggerEvent('size') end subroutine public subroutine uf_getfont ();// 在分销客户端环境下会产生字体变大的问题,因此屏蔽。ERP则正常 //string font //long index //ddlb_font.text=string(f_ProfileString(sys_empid,publ_userid+'_ddlb_font' ,"text",'宋体')) //index=long(f_ProfileString(sys_empid,publ_userid+'_ddlb_font_size' ,"text_size",'12')) // // //font = ddlb_font.text //ole_web.object.Document.ExecCommand("FontName", false, font) //ole_web.setfocus() //uf_refreshtoolbar() // //long fontsize //fontsize = index //ole_web.object.Document.ExecCommand("FontSize", false, fontsize) //ole_web.setfocus() //uf_refreshtoolbar() end subroutine public subroutine uf_setfont ();f_SetProfileString (sys_empid,publ_userid+'_ddlb_font', "text",String(ddlb_font.text)) //f_SetProfileString (sys_empid,publ_userid+'_ddlb_font_size', "text_size",String(ddlb_fontsize.index)) end subroutine public subroutine wf_picturetofile ();Long lul_hBitmap Long lul_hdcmem, hdc //判断剪贴板中的数据是否是BMP数据 Constant Long CF_BITMAP = 2 Constant Long DIB_RGB_COLORS = 0 Constant Long BITMAPTYPE = 19778 TRY IF IsNull(ClassName(GetFocus())) THEN RegisterHotKey(sys_handle, sys_atomid, MOD_CONTROL , 86) END IF Catch(runtimeerror err) unRegisterHotKey(sys_handle, sys_atomid) keybd_event ( 17, 0, 0 , 0 ) // 按下ctrl keybd_event ( 86, 0, 0 , 0 ) // 按下v keybd_event ( 17, 0, 2 , 0 ) // 按下ctrl keybd_event ( 86, 0, 2 , 0 ) // 按下v RETURN END TRY IF IsClipboardFormatAvailable(CF_BITMAP) <> 1 THEN ole_web.Object.Document.ExecCommand("Paste", True, 0) ole_web.SetFocus() uf_refreshtoolbar() RETURN END IF //(1)开始从剪贴板取数据 OpenClipboard(GetDesktopWindow()) lul_hBitmap = GetClipBoardData(CF_BITMAP) CloseClipboard() Blob lb hdc = GetDC(GetDesktopWindow()) lul_hdcmem = CreateCompatibleDC(hdc) SelectObject(lul_hdcmem, lul_hBitmap) //(2)将取得的内存图片转换位blob数据流 Long lul_hdc, lul_pixels Blob lblb_header, lblb_info, lblb_bitmap BitmapInfo lstr_Info BitmapFileHeader lstr_Header IF lul_hBitmap = 0 THEN RETURN lstr_Info.bmiHeader.biSize = 40 IF GetDIBits(lul_hdcmem, lul_hBitmap, 0, 0, 0, lstr_Info, DIB_RGB_COLORS) <= 0 THEN RETURN lul_pixels = lstr_Info.bmiHeader.biBitCount lstr_Info.bmiColors[lul_pixels] = 0 lblb_bitmap = Blob(Space(lstr_Info.bmiHeader.biSizeImage/2)) //原来------ Blob(Space(lstr_Info.bmiHeader.biSizeImage)) // 获取文件信息 GetDIBits(lul_hdcmem, lul_hBitmap, 0, lstr_Info.bmiHeader.biheight, & lblb_bitmap, lstr_Info, DIB_RGB_COLORS) // 创建BMP文件头 lstr_Header.bfType = BITMAPTYPE lstr_Header.bfSize = lstr_Info.bmiHeader.biSizeImage lstr_Header.bfOffBits = 54 + (lul_pixels * 4) // 将文件头转换成blob lblb_header = Blob(Space(7)) //原来------Blob(Space(14)) CopyBitmapFileHeader(lblb_header, lstr_Header, 14) // 将文件内容转换为blob lblb_info = Blob(Space(20 + lul_pixels * 2)) //原来------Blob(Space(40 + lul_pixels * 4)) CopyBitmapInfo(lblb_info, lstr_Info, 40 + lul_pixels * 4) // 整合文件信息 lblb_bitmap = lblb_header + lblb_info + lblb_bitmap //释放通过GetDC或GetWindowDC所检索出来的公用上下文设备 ReleaseDC(GetDesktopWindow(),hdc) //删除通过CreteDC或CreateCompatibleDC所创建的上下文设备 DeleteDC(lul_hdcmem) //(3)取到图片文件后,则开始保存到文件中 IF Len(lblb_bitmap) <= 0 THEN RETURN Constant ULong INVALID_HANDLE_VALUE = -1 Constant ULong GENERIC_WRITE = 1073741824 Constant ULong FILE_SHARE_WRITE = 2 Constant ULong CREATE_ALWAYS = 2 ULong lul_file, lul_length, lul_written Boolean lb_rtn // (创建)打开文件 String ls_path, ls_file,ls_filename Int li_rc //ls_filename = String(Today(), "yyyyMMddHHmmss") +"-"+ String(Hour(Now())) + String(Minute (Now()))+ String(Second(Now())) + ".bmp" ls_filename=string(today(), "yyyyMMddHHmmss") + ".bmp" ls_path = sys_cur_path+fjfilepathname+'\'+ls_filename //ls_path ="C:\Documents and Settings\Administrator\桌面\" + ls_filename //messagebox("",ls_path) //ls_path="C:\Documents and Settings\Administrator\桌面\1123.bmp" String arg_msg IF f_blobtofile(ls_path, lblb_bitmap, arg_msg) <> 1 THEN RETURN END IF // //lul_file = CreateFile(ls_path, GENERIC_WRITE, & // FILE_SHARE_WRITE, 0, CREATE_ALWAYS, 0, 0) //IF lul_file = INVALID_HANDLE_VALUE THEN RETURN //// 写文件 //lul_length = Len(lblb_bitmap) //lb_rtn = WriteFile(lul_file, lblb_bitmap, & // lul_length, lul_written, 0) //// 关闭文件 //CloseHandle(lul_file) ole_web.Object.Document.ExecCommand("InsertImage", False, ls_path) end subroutine on uo_html_editor.create this.pb_underline=create pb_underline this.pb_textcolor=create pb_textcolor this.pb_numbers=create pb_numbers this.pb_bullets=create pb_bullets this.pb_italic=create pb_italic this.pb_outdent=create pb_outdent this.pb_bold=create pb_bold this.pb_indent=create pb_indent this.pb_left=create pb_left this.pb_center=create pb_center this.pb_right=create pb_right this.pb_full=create pb_full this.pb_line=create pb_line this.pb_hyperlink=create pb_hyperlink this.pb_picture=create pb_picture this.ddlb_fontsize=create ddlb_fontsize this.ddlb_font=create ddlb_font this.ole_web=create ole_web this.Control[]={this.pb_underline,& this.pb_textcolor,& this.pb_numbers,& this.pb_bullets,& this.pb_italic,& this.pb_outdent,& this.pb_bold,& this.pb_indent,& this.pb_left,& this.pb_center,& this.pb_right,& this.pb_full,& this.pb_line,& this.pb_hyperlink,& this.pb_picture,& this.ddlb_fontsize,& this.ddlb_font,& this.ole_web} end on on uo_html_editor.destroy destroy(this.pb_underline) destroy(this.pb_textcolor) destroy(this.pb_numbers) destroy(this.pb_bullets) destroy(this.pb_italic) destroy(this.pb_outdent) destroy(this.pb_bold) destroy(this.pb_indent) destroy(this.pb_left) destroy(this.pb_center) destroy(this.pb_right) destroy(this.pb_full) destroy(this.pb_line) destroy(this.pb_hyperlink) destroy(this.pb_picture) destroy(this.ddlb_fontsize) destroy(this.ddlb_font) destroy(this.ole_web) end on event constructor;do while ddlb_font.totalitems( ) > 0 ddlb_font.deleteitem(1) loop uf_addfonts() ole_web.object.Navigate('about:blank') ole_web.object.document.ExecCommand("EditMode", false, 0) ole_web.object.document.ExecCommand("LiveResize", false, 0) ddlb_font.selectitem(1) ddlb_fontsize.selectitem(1) triggerevent('size') end event event other;//在窗口的other事件编写脚本: //处理系统热键 IF wparam = sys_atomid And sys_atomid <> 0 THEN //处理 wf_picturetofile() END IF end event type pb_underline from picturebutton within uo_html_editor string tag = "graphics\_Underline.bmp" integer x = 1184 integer width = 101 integer height = 88 integer taborder = 30 integer textsize = -9 integer weight = 400 fontcharset fontcharset = gb2312charset! fontpitch fontpitch = variable! string facename = "宋体" string picturename = "graphics\Underline.bmp" string disabledname = "graphics\Underline.bmp" alignment htextalign = left! end type event clicked;ole_web.object.Document.ExecCommand("Underline", false, 0) ole_web.setfocus() uf_refreshtoolbar() end event type pb_textcolor from picturebutton within uo_html_editor string tag = "graphics\_Color.bmp" integer x = 1285 integer width = 101 integer height = 88 integer taborder = 30 integer textsize = -9 integer weight = 400 fontcharset fontcharset = gb2312charset! fontpitch fontpitch = variable! string facename = "宋体" string picturename = "graphics\Color.bmp" string disabledname = "graphics\Color.bmp" alignment htextalign = left! end type event clicked;string ls_color long ll_color ll_color = long(ole_web.object.Document.queryCommandValue("ForeColor")); if ChooseColor(ll_color) = 1 then ls_color = tohex(ll_color, 6) ls_color = '#' + mid(ls_color, 5, len(ls_color)) + mid(ls_color, 3, 2) + mid(ls_color, 1, 2) ole_web.object.Document.ExecCommand("ForeColor", false, ls_color) ole_web.setfocus() uf_refreshtoolbar() end if end event type pb_numbers from picturebutton within uo_html_editor string tag = "graphics\_Numbers.bmp" integer x = 1385 integer width = 101 integer height = 88 integer taborder = 30 integer textsize = -9 integer weight = 400 fontcharset fontcharset = gb2312charset! fontpitch fontpitch = variable! string facename = "宋体" string picturename = "graphics\Numbers.bmp" string disabledname = "graphics\Numbers.bmp" alignment htextalign = left! end type event clicked;ole_web.object.Document.ExecCommand("InsertOrderedList", false, 0) ole_web.setfocus() uf_refreshtoolbar() end event type pb_bullets from picturebutton within uo_html_editor string tag = "graphics\_Bullets.bmp" integer x = 1486 integer width = 101 integer height = 88 integer taborder = 30 integer textsize = -9 integer weight = 400 fontcharset fontcharset = gb2312charset! fontpitch fontpitch = variable! string facename = "宋体" string picturename = "graphics\Bullets.bmp" string disabledname = "graphics\Bullets.bmp" alignment htextalign = left! end type event clicked;ole_web.object.Document.ExecCommand("InsertUnorderedList", false, 0) ole_web.setfocus() uf_refreshtoolbar() end event type pb_italic from picturebutton within uo_html_editor string tag = "graphics\_Italic.bmp" integer x = 1083 integer width = 101 integer height = 88 integer taborder = 30 integer textsize = -9 integer weight = 400 fontcharset fontcharset = gb2312charset! fontpitch fontpitch = variable! string facename = "宋体" string picturename = "graphics\Italic.bmp" string disabledname = "graphics\Italic.bmp" alignment htextalign = left! end type event clicked;ole_web.object.Document.ExecCommand("Italic", false, 0) ole_web.setfocus() uf_refreshtoolbar() end event type pb_outdent from picturebutton within uo_html_editor string tag = "graphics\_Outdent.bmp" integer x = 1586 integer width = 101 integer height = 88 integer taborder = 30 integer textsize = -9 integer weight = 400 fontcharset fontcharset = gb2312charset! fontpitch fontpitch = variable! string facename = "宋体" string picturename = "graphics\Outdent.bmp" string disabledname = "graphics\Outdent.bmp" alignment htextalign = left! end type event clicked;ole_web.object.Document.ExecCommand("Outdent", false, 0) ole_web.setfocus() uf_refreshtoolbar() end event type pb_bold from picturebutton within uo_html_editor string tag = "graphics\_Bold.bmp" integer x = 983 integer width = 101 integer height = 88 integer taborder = 30 integer textsize = -9 integer weight = 400 fontcharset fontcharset = gb2312charset! fontpitch fontpitch = variable! string facename = "宋体" string picturename = "graphics\Bold.bmp" string disabledname = "graphics\Bold.bmp" alignment htextalign = left! end type event clicked;ole_web.object.Document.ExecCommand("Bold", false, 0) ole_web.setfocus() uf_refreshtoolbar() end event type pb_indent from picturebutton within uo_html_editor string tag = "graphics\_Indent.bmp" integer x = 1687 integer width = 101 integer height = 88 integer taborder = 30 integer textsize = -9 integer weight = 400 fontcharset fontcharset = gb2312charset! fontpitch fontpitch = variable! string facename = "宋体" string picturename = "graphics\Indent.bmp" string disabledname = "graphics\Indent.bmp" alignment htextalign = left! end type event clicked;ole_web.object.Document.ExecCommand("Indent", false, 0) ole_web.setfocus() uf_refreshtoolbar() end event type pb_left from picturebutton within uo_html_editor string tag = "graphics\_Left.bmp" integer x = 1787 integer width = 101 integer height = 88 integer taborder = 30 integer textsize = -9 integer weight = 400 fontcharset fontcharset = gb2312charset! fontpitch fontpitch = variable! string facename = "宋体" string picturename = "graphics\Left.bmp" string disabledname = "graphics\Left.bmp" alignment htextalign = left! end type event clicked;ole_web.object.Document.ExecCommand("JustifyLeft", false, 0) ole_web.setfocus() uf_refreshtoolbar() end event type pb_center from picturebutton within uo_html_editor string tag = "graphics\_Center.bmp" integer x = 1888 integer width = 101 integer height = 88 integer taborder = 30 integer textsize = -9 integer weight = 400 fontcharset fontcharset = gb2312charset! fontpitch fontpitch = variable! string facename = "宋体" string picturename = "graphics\Center.bmp" string disabledname = "graphics\Center.bmp" alignment htextalign = left! end type event clicked;ole_web.object.Document.ExecCommand("JustifyCenter", false, 0) ole_web.setfocus() uf_refreshtoolbar() end event type pb_right from picturebutton within uo_html_editor string tag = "graphics\_Right.bmp" integer x = 1989 integer width = 101 integer height = 88 integer taborder = 30 integer textsize = -9 integer weight = 400 fontcharset fontcharset = gb2312charset! fontpitch fontpitch = variable! string facename = "宋体" string picturename = "graphics\Right.bmp" string disabledname = "graphics\Right.bmp" alignment htextalign = left! end type event clicked;ole_web.object.Document.ExecCommand("JustifyRight", false, 0) ole_web.setfocus() uf_refreshtoolbar() end event type pb_full from picturebutton within uo_html_editor string tag = "graphics\_Full.bmp" integer x = 2089 integer width = 101 integer height = 88 integer taborder = 30 integer textsize = -9 integer weight = 400 fontcharset fontcharset = gb2312charset! fontpitch fontpitch = variable! string facename = "宋体" string picturename = "graphics\Full.bmp" string disabledname = "graphics\Full.bmp" alignment htextalign = left! end type event clicked;ole_web.object.Document.ExecCommand("JustifyFull", false, 0) ole_web.setfocus() uf_refreshtoolbar() end event type pb_line from picturebutton within uo_html_editor string tag = "graphics\_Line.bmp" integer x = 2190 integer width = 101 integer height = 88 integer taborder = 30 integer textsize = -9 integer weight = 400 fontcharset fontcharset = gb2312charset! fontpitch fontpitch = variable! string facename = "宋体" string picturename = "graphics\Line.bmp" string disabledname = "graphics\Line.bmp" alignment htextalign = left! end type event clicked;ole_web.object.Document.ExecCommand("InsertHorizontalRule", false, 0) ole_web.setfocus() uf_refreshtoolbar() end event type pb_hyperlink from picturebutton within uo_html_editor string tag = "graphics\_Hyperlink.bmp" integer x = 2290 integer width = 101 integer height = 88 integer taborder = 40 integer textsize = -9 integer weight = 400 fontcharset fontcharset = gb2312charset! fontpitch fontpitch = variable! string facename = "宋体" string picturename = "graphics\Hyperlink.bmp" string disabledname = "graphics\Hyperlink.bmp" alignment htextalign = left! end type event clicked;ole_web.object.Document.ExecCommand("CreateLink", true, 0) ole_web.setfocus() uf_refreshtoolbar() end event type pb_picture from picturebutton within uo_html_editor string tag = "graphics\_Picture.bmp" integer x = 2391 integer width = 101 integer height = 88 integer taborder = 30 integer textsize = -9 integer weight = 400 fontcharset fontcharset = gb2312charset! fontpitch fontpitch = variable! string facename = "宋体" string picturename = "graphics\Picture.bmp" string disabledname = "graphics\Picture.bmp" alignment htextalign = left! end type event clicked;ole_web.object.Document.ExecCommand("InsertImage", true, 0) ole_web.setfocus() uf_refreshtoolbar() end event type ddlb_fontsize from dropdownlistbox within uo_html_editor integer x = 759 integer y = 4 integer width = 219 integer height = 576 integer taborder = 20 integer textsize = -9 integer weight = 400 fontcharset fontcharset = gb2312charset! fontpitch fontpitch = variable! string facename = "宋体" long textcolor = 33554432 boolean sorted = false string item[] = {"8","10","12","14","18","24","36"} borderstyle borderstyle = stylelowered! end type event selectionchanged;int fontsize fontsize = index ole_web.object.Document.ExecCommand("FontSize", false, fontsize) ole_web.setfocus() uf_refreshtoolbar() f_SetProfileString (sys_empid,publ_userid+'_ddlb_font_size', "text_size",String(index)) end event type ddlb_font from dropdownlistbox within uo_html_editor integer y = 4 integer width = 750 integer height = 576 integer taborder = 10 integer textsize = -9 integer weight = 400 fontcharset fontcharset = gb2312charset! fontpitch fontpitch = variable! string facename = "宋体" long textcolor = 33554432 boolean vscrollbar = true string item[] = {"宋体","黑体","@宋体","@黑体"} borderstyle borderstyle = stylelowered! end type event selectionchanged;string font font = this.text ole_web.object.Document.ExecCommand("FontName", false, font) ole_web.setfocus() uf_refreshtoolbar() f_SetProfileString (sys_empid,publ_userid+'_ddlb_font', "text",String(ddlb_font.text)) end event type ole_web from olecustomcontrol within uo_html_editor event statustextchange ( string text1 ) event progresschange ( long progress, long progressmax ) event commandstatechange ( long command, boolean enable ) event downloadbegin ( ) event downloadcomplete ( ) event titlechange ( string text1 ) event propertychange ( string szproperty ) event beforenavigate2 ( oleobject pdisp, any url, any flags, any targetframename, any postdata, any headers, ref boolean cancel1 ) event newwindow2 ( ref oleobject ppdisp, ref boolean cancel1 ) event navigatecomplete2 ( oleobject pdisp, any url ) event documentcomplete ( oleobject pdisp, any url ) event onquit ( ) event onvisible ( boolean ocx_visible ) event ontoolbar ( boolean toolbar ) event onmenubar ( boolean menubar ) event onstatusbar ( boolean statusbar ) event onfullscreen ( boolean fullscreen ) event ontheatermode ( boolean theatermode ) event windowsetresizable ( boolean resizable ) event windowsetleft ( long left ) event windowsettop ( long top ) event windowsetwidth ( long ocx_width ) event windowsetheight ( long ocx_height ) event windowclosing ( boolean ischildwindow, ref boolean cancel1 ) event clienttohostwindow ( ref long cx, ref long cy ) event setsecurelockicon ( long securelockicon ) event filedownload ( ref boolean cancel1 ) event navigateerror ( oleobject pdisp, any url, any frame, any statuscode, ref boolean cancel1 ) event printtemplateinstantiation ( oleobject pdisp ) event printtemplateteardown ( oleobject pdisp ) event updatepagestatus ( oleobject pdisp, any npage, any fdone ) event privacyimpactedstatechange ( boolean bimpacted ) event keyup pbm_keyup event showwindow pbm_showwindow integer y = 92 integer width = 2501 integer height = 600 integer taborder = 20 boolean border = false borderstyle borderstyle = stylelowered! boolean focusrectangle = false string binarykey = "uo_html_editor.udo" integer textsize = -12 integer weight = 400 fontcharset fontcharset = ansi! fontpitch fontpitch = variable! fontfamily fontfamily = swiss! string facename = "Arial" long textcolor = 33554432 end type event keyup; uf_refreshtoolbar() end event event showwindow;if not ib_shown then parent.triggerevent('ue_afterinit') end if ib_shown = true end event event getfocus;uf_refreshtoolbar() end event event clicked;string font uf_getfont() //font = string(f_ProfileString(sys_empid,publ_userid+'_ddlb_font' ,"text",'宋体')) //ole_web.object.Document.ExecCommand("FontName", false, font) //ole_web.setfocus() //uf_refreshtoolbar() RegisterHotKey(sys_handle, sys_atomid, MOD_CONTROL , 86) //// ////注册热键 //long ll_RC //string ls_atomid //ls_atomid = 'myatomid' //atomid = GlobalAddAtom(ls_atomid) ////得到惟一的ID,保证不和其他应用程序发生冲突 //ll_RC = RegisterHotKey(Handle(this), atomid, MOD_CONTROL , 86) ////注册的热键为Ctrl+F ,70为'F' 86 v ////如果组合键,可用MOD_CONTROL + MOD_ALT等ctrl +v //if ll_RC = 0 then messagebox("Error!","热键注册错误") ////热键注册冲突 end event event doubleclicked;string font uf_getfont() //font = ddlb_font.text //ole_web.object.Document.ExecCommand("FontName", false, font) //ole_web.setfocus() //uf_refreshtoolbar() // end event event constructor;//注册热键 long ll_RC string ls_atomid ls_atomid = 'myatomid' sys_atomid = GlobalAddAtom(ls_atomid) sys_handle=Handle(parent) //得到惟一的ID,保证不和其他应用程序发生冲突 ll_RC = RegisterHotKey(sys_handle, sys_atomid, MOD_CONTROL , 86) //注册的热键为Ctrl+F ,70为'F' 86 v //如果组合键,可用MOD_CONTROL + MOD_ALT等ctrl +v //if ll_RC = 0 then messagebox("Error!","热键注册错误") // 貌似注册失败都可以使用Ctrl+F热键 hjy161223 //热键注册冲突 end event Start of PowerBuilder Binary Data Section : Do NOT Edit 05uo_html_editor.bin 2E00000a00e011cfd0e11ab1a1000000000000000000000000000000000003003e0009fffe000000060000000000000000000000010000000100000000000010000000000200000001fffffffe0000000000000000fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffdfffffffefffffffefffffffeffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff006f00520074006f004500200074006e00790072000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000050016ffffffffffffffff000000010000000000000000000000000000000000000000000000000000000044ea50a001d25cd200000003000001800000000000500003004f0042005800430054005300450052004d0041000000000000000000000000000000000000000000000000000000000000000000000000000000000102001affffffff00000002ffffffff000000000000000000000000000000000000000000000000000000000000000000000000000000000000009c00000000004200500043004f00530058004f00540041005200450047000000000000000000000000000000000000000000000000000000000000000000000000000000000001001affffffffffffffff000000038856f96111d0340ac0006ba9a205d74f0000000044ea50a001d25cd244ea50a001d25cd2000000000000000000000000004f00430054004e004e00450053005400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001020012ffffffffffffffffffffffff000000000000000000000000000000000000000000000000000000000000000000000000000000030000009c000000000000000100000002fffffffe0000000400000005fffffffeffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff 2Cffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0000004c0000388900000f810000000000000000000000000000000000000000000000000000004c0000000000000000000000010057d0e011cf3573000869ae62122e2b00000008000000000000004c0002140100000000000000c0460000000000008000000000000000000000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004c0000388900000f810000000000000000000000000000000000000000000000000000004c0000000000000000000000010057d0e011cf3573000869ae62122e2b00000008000000000000004c0002140100000000000000c0460000000000008000000000000000000000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 15uo_html_editor.bin End of PowerBuilder Binary Data Section : No Source Expected After This Point