需要引入jquery.js和库clipboard.min.js
<div id="needCopyText">待复制的内容</div>
<span class="copyContent" data-clipboard-target="#needCopyText">复制</span>
//引入实例化clipboard.js, 注意这里不要用Clipboard而是ClipboardJS
var clipboard = new ClipboardJS('.copyContent');
clipboard.on('success', function(e) {//如果成功复制的话
//console.log('Action:', e.action);
//console.log('Text:', e.text);
//console.log('Trigger:', e.trigger);
console.log('复制成功');
});
clipboard.on('error', function(e) {//如果复制失败
console.log('复制失败,请...
PowerBuilder(PB)是一种跨平台的且功能强大、性能优异的开发工具。在客户端/服务器系统结构的应用模式中,作为客户端的一种面向对象的可视化设计工具,在与数据库相连接操作的系统中得到较为广泛的应用。笔者在使用PB开发Sybase数据库应用,建立企业管理信息系统的过程中,积累了一点经验和技巧,现将其中的一部分在此做点介绍,或许能够对朋友们有点启发和帮助。 一、PowerBuilder与Sybase SQL Server的连接 若在连接时出现问题,必须要冷静多思考。首先要检查客户端的情况,确认Open Client已经安装,并正确配置。要注意OPen Client必须与PowerBuilder同为32位,或同为16位。PB与Sybase连不上,常见的几种错误现象...
本文介绍了动态链接库的基本特点,给出了VC++建立DLL以及在PowerBuilder中调用VC++创建的DLL函数的编程实例,实现了通过DLL连接PowerBuilder和VC++编制的不同程序的目的。 一、DLL概述: 动态链接库(Dynamic-Link Library),简称DLL,是基于Windows程序设计的一个非常重要的组成部分。使用DLL有许多优点: (1)使用DLL的动态连接不是将库代码拷贝,只在程序中记录函数的入口点和接口,在程序执行时才将库代码装入内存,如果有多个程序使用相同的DLL,也只需将DLL在内存中装载一次,节省了内存开销。 (2)DLL是基于Windows的程序模块,它不仅包含可执行代码,还可以包含数据,各种...
1、定义结构及外部函数global type uuid from structure ulong data1 uint data2 uint data3 character data4[8]end typeFunction ulong UuidCreate(ref uuid lpUUID) LIBRARY "rpcrt4"Function ulong UuidToString (ref uuid lpUUID, ref long lpUUIDString) LIBRARY "rpcrt4" Alias for "UuidToStringA"Function ulong RpcStringFree(long lpUUIDString) LIBRARY "rpcrt4" Alias for "RpcStringFreeA" 2、函数主体CONSTANT Long RPC_S_OK = 0CONSTANT Long RPC_S_UUID_LOCAL_ONLY =...
Describe 可以描述DW中某个对象的某个属性的取值,虽然函数Describe可以获取对象的信息,但是表达式的取值就不能正常读取了,而这又是经常遇到的.Evaluate 如果想获取数据窗口对象中由属性、函数等构成的表达式的取值时,必须在函数Describe中使用函数Evaluate,LookUpDisplay 在数据窗口控件上显示的值和字段实际得到的值并不相同,使用函数GetItemX只能读取这样的字段的真实取值,而不是用户看到的值。如何才能读取用户看到的值?可以使用此函数,LookUpDisplay函数不能直接从PowerScript调用,可以在Describe中和Evaluate函数配合使用。因为函数Lookupdisplay不能指定对哪行数据进行操作,它的参数只有一个字段名称,所以必...
在PowerBuilder(文中简称PB)中,没有现成的像 VFP 中根据结构伸展文件生成数据表的函数。而在数据库应用系统的开发中,常常需要根据用户的要求创建数据表。我们可以仿照VFP的结构伸展文件创建一个数据表sjbjg(如图),用来存放用户欲创建数据表的结构,从而来相对简单地解决这个问题。为sjbjg数据表建立一个名为d_sjbjg的Grid数据窗口,数据源采用Quick Select。新建一个窗口,添加一个数据窗口控件dw_1和一个按钮控件cb_1。Dw_1的dataObject设置为d_sjbjg,cb_1的text设置为“创建数据表”。在cb_1的Clicked事件中输入以下代码:string Mysqlint ls_last,rowmysql='drop table Tablename' /...
一、完全备份和增量备份"完全备份"对数据库文件和事务日志都进行备份。"增量备份"仅对事务日志进行备份。通常,会在完全备份过程中穿插进行多个增量备份。比如,一周进行一次完全备份,每天进行一次增量备份。二、执行完全备份或者增量备份 完全备份是对数据库文件和事务日志文件进行备份。增量备份只备份事务日志文件。通常,您应当在每两次完全备份之间进行几次增量备份。 1. 确保您对数据库具有DBA权限。 2. 对数据库执行校验检查以确保它未损坏。您可以使用Validation实用程序或sa_validate存储过程。 例如:以DBA身份连入数据库,然后运行命令:call sa_validate或者在命令行下: dbvalid -c "...
sp; // // 测试用数据(窗口多边形) // // // ////////////////////////////////////////////////// long ll_x1, ll_x2, ll_x3 long ll_y1, ll_y2, ll_y3 long ll_handle ll_x1 = 4 ll_y1 = 4 ll_x2 = UnitsToPixels(parent.width, xunitstopixels!) - 4 ll_y2 = UnitsToPixels(parent.height, yunitstopixels!) - 4 ll_x3 = 250 ll_y3 = 250 ll_handle = CreateRoundRectRgn(ll_x1, ll_y1, ll_x2, ll_y2, ll_x3, ll_y3) SetwindowRgn(handle(parent), ll_handle, true) return 1 end event type st_1 from statictext within w_button integer x = 567 integer y = 200 integer width = 1207 integer height = 264 boolean bringtoto...
解决方案:OLEObject OLE_MyExcel OLE_MyExcel =Create OLEObject OLE_MyExcel. ConnectToNewObject("excel.Application")OLE_MyExcel.visible=false OLE_MyExcel.Workbooks.Open("c:xxx.xls") messagebox("rows",string(OLE_MyExcel.ActiveWorkbook.Activesheet.UsedRange.Rows.Count))OLE_MyExcel.quit() OLE_MyExcel.DisConnectObject() destroy OLE_MyExcel...
问题描述:如何在PB中使用ASCII码为0的字符?解决方案:1、如何向注册表中写二进制,要求最后显示为“00”blob{1} kli_sysdir=RegistrySet('HKEY_current_user oftwareodbcodbc.ini zaEnginesXbase','Statistics',RegBinary!,k)2、如何向注册表中写二进制,要求最后显示为“01”blob lb_vlb_v=blob(char(1)) li_sysdir=RegistrySet('HKEY_current_user oftwareodbcodbc.ini zaEnginesXbase','Statistics',RegBinary!,lb_v) ************************************原理跟上文一样,声明blob{1} k,然后使用k即可代表00...
问题描述:如何在PB中编写PING代码?解决方案:声明外部函数:Function ulong IcmpCreateFile () Library "icmp.dll"Function long IcmpSendEcho (ulong IcmpHandle, ulong DestinationAddress, string RequestData,long RequestSize, long RequestOptions, Ref icmp_echo_reply ReplyBuffer, long ReplySize, long Timeout ) Library "icmp.dll" Alias for "IcmpSendEcho"Function long IcmpCloseHandle (ulong IcmpHandle) Library "icmp.dll"Function ulong inet_addr (string cp) Library "ws2_32.dll" Alias for "inet_addr"代...
一、API声明: SUBROUTINE CopyMemory(ref METAHEADER Destination , ref blob Source, long Length) LIBRARY "kernel32" Alias for "RtlMoveMemory" SUBROUTINE CopyMemory2(ref blob Destination , ref blob Source, long Length) LIBRARY "kernel32" Alias for "RtlMoveMemory" Function ulong SetMetaFileBitsEx(ulong nSize,ref blob lpData) LIBRARY "gdi32.dll" 二、PB脚本: METAHEADER lst_Hdr integer li_FileNum Long ll_hMF,ll_loops,ll_pos,ll_len blob lb_structure,lb_da...
本文拟以SYBASE ASE 10.X和11.X数据库为例,说明如何在PB脚本当中获取存储过程的返回值。作为一个存储过程,其输出的结果数据可能包括三类:SELECT结果集、RETURN结果、OUTPUT参数。尽管输出方式众多,但PB脚本仅仅借助简单的FETCH…INTO…语句即可全部获取这些输出数据,具体方式如下: (一)在SYBASE ASE 10.X和11.X数据库当中创建一个存储过程deptroster,其有一个输入参数@deptno、两个输出参数@totsal 和 @avgsal、一个RETURN值@number_of_emps以及包含职员姓名和工资的SELECT结果集,可见除了输入参数@deptno外,其他均为输出数据,我们需要在PB脚本中获...
说到DYNAMIC调用类型,我们先看看对象、属性、函数和事件的引用方法:PowerBuilder 6.0应用程序的开发过程实际上就是各种对象的定义和使用过程。所有对象都有名称,并通过名称相互区分。在PowerScript中,访问对象的属性、函数、事件的方法很简单,就是使用圆点作为标记符,具体来说,访问对象属性的格式为:对象名.对象属性例如,把单行编辑框sle_name的用户输入内容送到字符串变量UserEnter的语句可以写成:UserEnter=sle_name.Text其中,sle_name是一个单行编辑框对象的名称,Text是单行编辑框的Text属性。程序中访问对象的函数与事件的格式为:{ objectname.} { type } { calltype } { when } functionname ( { argumentli...
我们知道可以用Send ( handle, message#, lowword, long )函数完成不同程序窗口间的消息传递,其中最后两个参数为long型,因此可以利用这两个参数来传递数字型的变量。如果想传递的是字符串呢?由于每个进程都有自己独立的内存地址和内存空间,因此不可能直接通过访问变量地址的方法得到变量。下面给出pb的方法:source程序:外部函数:Function ulong GetCurrentProcessId() LIBRARY "kernel32.dll"Function integer SndMsg(long hWnd, long uMsg, long url, &ref blob info) library "user32.dll" Alias For "SendMessageAconstant long PBM_CUSTOM01 = 1024程序:IF il_hTar...
一些结构和API在非FTP方式文档中有了定义就不再说明。一、API声明function uLong InternetOpenA(string lpszAgent, ulong dwAccessType,string lpszProxyName,string lpszProxyBypass, ulong dwFlags) library "wininet.dll"function ulong InternetConnectA(ulong hInternet,string lpszServerName,ulong nServerPort,string lpszUsername,string lpszPassword,ulong dwService,ulong dwFlags,ulong dwContext) library "wininet.dll"function boolean InternetCloseHandle(ulong hInternet) library "wininet.dll"function boolean FtpSetCurrentDirectoryA(ulong h...