![](https://img-blog.csdnimg.cn/20201014180756780.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
PowerBuilder
ClearLoveQ
格拉德韦尔在《异数》:并非天资超人一等,而是付出了持续不断的努力。只要经过1万小时的锤炼,任何人都能从平凡变成超凡”。要成为某个领域的专家,需要10000小时:如果每天工作八个小时,一周工作五天,那么成为一个领域的专家至少需要五年。
展开
-
PowerBuilder鼠标移入移出事件
PowerBuilder中只有窗口和富文本有mouse事件外,其他都没有PowerBuiler中没有鼠标移入移出的直接事件,需要我们自己定义1.首先需要定义一个结构,用来存储鼠标的坐标(position)2.声明两个全局外部函数FUNCTION ulong GetCursorPos(ref position lpPoint) LIBRARY "user32.dll"FUNCT...原创 2018-08-09 17:59:15 · 1574 阅读 · 0 评论 -
PowerBuilder中使用SQL游标查询
1.用DECLARE语句声明游标2.使用Open语句打开游标3.使用FETCH语句读取一行游标4.根据返回值处理数据5.判断是否已经读完所有的数据,未读完时冲锋衣执行3-5步6.使用CLOSE关闭游标实例1:手动编写语句String list1,list2 //1.声明用于存储产讯结果的变量列表变量列表DECLARE CursorNam...原创 2018-08-13 15:03:22 · 2043 阅读 · 0 评论 -
PowerBuilder通过ADO.NET连接数据库
1.ini文件中的内容[database]DBMS ="ADO.Net"Database ="AppDB"ServerName ="*********"LogId ="**" LogPass ="******"dbparm="Namespace='System.Data.SqlClient',DataSource='*******',Database='appdb'"原创 2018-08-16 10:22:54 · 994 阅读 · 0 评论 -
PowerBuilder生成一棵实时的目录树
一棵完整的树1.首先在一个自定义函数(wf_initwindow)中设置根节点 //==================================================================== // 事件: 窗体名字.wf_initwindow() //------------------------------------------------...原创 2018-08-17 11:57:06 · 591 阅读 · 0 评论 -
PowerBuilder的String 函数和日期相关
PB String ( data, { format } )函数作用: 该函数有两种用法,一种是进行类型转换,见语法格式二;另一种是进行类型转换的同时还进行数据格式的转换,见语法格式一。重点是格式一的学习和理解。函数语法: 格式一:String ( data, { format } ) 格式二:String ( Blob )data:要进行类...原创 2018-08-20 11:18:35 · 3471 阅读 · 0 评论 -
PB的文件处理方法
FileClose()功能关闭先前用FileOpen()函数打开的文件。语法FileClose ( fileno )参数fileno:integer,指定要关闭文件的文件句柄,该句柄使用FileOpen()函数打开文件时得到返回值Integer。函数执行成功时返回1,发生错误时返回-1。如果fileno参数的值为NULL,那么FileClose()函数返回NULL。FileDelete(...转载 2018-10-22 11:26:29 · 1868 阅读 · 0 评论 -
PB中执行SQL语句
PowerBuilder的嵌入式SQL语句只能支持一些固定的标准的SQL语句,即在进行程序代码编译处理时这些SQL语句必须是确定的,另外这种方式也不能执行像Creat Table,Creat Database等这些数据库定义的语句(DDL)。因此这种嵌入式SQL语句在实际应用中有一定的局限性。为克服这种方式的局限性,可以使用动态SQL语句,这种方式可以完成嵌入式SQL语句无法实现的功能。如建库、...转载 2018-10-22 19:33:31 · 4533 阅读 · 0 评论 -
PB实用技巧
如何在PB5中自动生成行号 delelte数据窗口中若干行,然后update,出现: “rows changed between retrieve and update No changes made to database… Delete from table where ….” 请教是何缘故,该数据窗口是updatable 的,未设置关键字。 如何能够作到,在打印一个DataWindows...转载 2018-11-07 16:09:05 · 1852 阅读 · 0 评论 -
PB中的类型转换
问:pb 中类型转换函数是什么?答:例如以下函数是类型转换函数:Char()功能将字符串的第一个字符、Blob变量的第一个值、或一个整数转换成字符。语法Char ( n )参数n:字符串、Blob变量或整数,也可以是包含上述类型数据的Any类型变量返回值Char。返回参数n的第一个字符。如果n参数的值为NULL,则Char()函数返回NULL。---------------...转载 2018-11-07 16:11:30 · 3919 阅读 · 0 评论 -
PB的DataWindow的38个技巧
1 使DataWindow列只能追加不能修改 如何使DataWindow中的数据只能追加新记录而不能修改,利用 Column 的 Protect 属性可以很方便的做到这一点,方法如下:将每一列的 Protect 属性设置为:If( IsRowNew(), 0, 1) )在 PowerScript 中可以动态修改 Protect 属性:dw_1.Modify("column_name...转载 2018-11-07 16:16:10 · 6731 阅读 · 0 评论 -
PowerBuilder数据窗口控件与数据库有关的函数
本节介绍的主要内容如下:· 与数据库有关的函数· 行操作· 列操作· 数据操作PowerBuilder为数据窗口控件提供了丰富的函数,这些函数使用户能够在使用数据窗口控件时得心应手。与数据库有关的函数这类函数完成与数据库有关的功能。一、连接数据库连接数据库也就是指定事务对象。PowerBuilder提供了两个函数:SetTrans()和SetTransObject()。语法格式...转载 2018-11-07 16:49:07 · 1417 阅读 · 0 评论 -
PB的应用对象和事务对象
1.应用对象application 通常被看做一个对象,所有的开发都是围绕着对象的,应用对象整个程序的入口点,事务对象(默认SQLCA)是用来连接数据库的应用对象 ( 非可视对象)- 默认字体- 程序图标- 应用库搜索 ( pbl 文件, 不建议太大,一般不要超过 800K, 目前我们系统就很大 5M 的都有 )- 默认全局变量 5 个 : SQLCA SQLDA SQLS...转载 2018-11-12 11:50:16 · 1148 阅读 · 2 评论 -
PB中的timer事件
一.timer事件1.在窗口的timer事件中编写代码2.在相应的触发事件中调用:timer(1) 就是每隔一秒触发一次,timer(0)就是关闭计时器实例:在窗口的timer()事件中编写代码:w_main.BackColor=rgb(rand(255),rand(255),rand(255)) rand(255)是生成随机数; rgb是颜色函数;然后在窗口的打开...原创 2018-08-08 17:50:24 · 11883 阅读 · 0 评论 -
PB中的数据窗口和Filter和DataStore
一.Filter的使用: 函数作用:为DataWindow或者DataStore指定数据过滤规则。通常在调用该函数前使用函数Retrieve将数据检索到客户端,该函数可以决定检索到客户端的这些数据哪些可以显示,哪些不能显示。该函数对客户端的数据进行操作,和后台数据库没有任何关系。在设置完过滤规则后使用函数Retrieve检索数据是不合理的,每次设置过滤规则后都检索数据,这样的执行效率很低...原创 2018-08-08 12:29:27 · 4475 阅读 · 0 评论 -
PowerBuilder动态窗口的创建
1.在View/Variable/Gobal External Function中 声明AnimateWindowfunction boolean AnimateWindow ( long hwnd, long dwtime, long dwflags ) library "user32" 2.在instance中定义常量constant long AW_HOR_POSITIVE...原创 2018-08-09 18:40:41 · 754 阅读 · 0 评论 -
PowerBuilder半透明窗口的设置
1.在Global External Function中申明外部函数//透明窗体设置Function ulong SetLayeredWindowAttributes(ulong hWnd , long crKey , Character bAlpha ,long dwFlags) library"user32.dll" alias for "SetLayeredWindowAttribu...原创 2018-08-10 08:30:54 · 791 阅读 · 0 评论 -
PowerBuilder圆型窗口的设置和不规则窗口介绍
一.PB生成圆形窗口设置PowerBuilder中创建的窗口都是标准的矩形,借助API的CreateEllipticRgn()和SetWindowRgn()函数能实现圆形窗口CreateEllipticRgn()函数的功能是创建一个椭圆,该椭圆与X1,Y1和X2,Y2坐标点确定矩形内切,执行成功则为区域句柄,失败则为0SetWindowRgn()是一个改变窗口区域的API函数,通常所有...原创 2018-08-10 10:25:28 · 1217 阅读 · 0 评论 -
PowerBuilder中Messagebox的用法
完整写法为 MessageBox ( '标题','内容',图标,按键,默认值)其中标题与内容为要显示的字符串,不可省略图标可选值: Information! 或 StopSign! 或 Exclamation! 或Question! 或 None!按键可选值: OK! 或 OKCancel! 或 YesNo! 或 YesNoCancel! 或RetryCancel! 或 AbortRetryI...转载 2018-08-10 16:58:18 · 3812 阅读 · 0 评论 -
PowerBuilder中quick select类型的datawinow数据源控件中添加查询参数
quick select类型的datawinow数据源控件中添加查询参数首先在application上右键——new——datawindow——freedom/grid——OK——选择quick select——选择要查询的表名和列名——OK——next——完成控件的创建。此时点击顶部菜单栏的design——datasource会出现编辑数据源的对话框如图1:点击下部标签栏中的wh...转载 2018-08-10 17:23:06 · 563 阅读 · 0 评论 -
DLL动态链接库,以及在PB中声明函数
一.DLL概述: ---- 动态链接库(Dynamic-Link Library),简称DLL,是基于Windows程序设计的一个非常重要的组成部分。使用DLL有许多优点:(1)使用DLL的动态连接不是将库代码拷贝,只在程序中记录函数的入口点和接口,在程序执行时才将库代码装入内存,如果有多个程序使用相同的DLL,也只需将DLL在内存中装载一次,节省了内存开销。(2)DLL是基...原创 2018-08-10 17:45:17 · 4764 阅读 · 0 评论 -
PowerScript语言基础
PowerScript语言基础一.基础知识:没有行号,每行结束不需要“;”号续行符号:& 但是不能在标示符和保留字之间续行允许一行写多条语句,语句用 ; 号分隔注释: // /* */ 蓝色标示符: 必须以字母或下划线“_”开头; 不能是保留字; 长度不超过40个字符; 不能含...原创 2018-08-02 11:21:08 · 3623 阅读 · 0 评论 -
PowerBuilder的函数
常用函数1.数据类型的转换和检查函数 常用的类型转换函数 常用的类型检查函数: 2.数值计算函数 3.字符串操作函数4.日期时间函数5.文件系统函数涉及文件打开,读,写,关闭,复制,删除,创建目录,删除目录,判断目录是否存在等 <1>GetFileOpenName() ...原创 2018-08-03 09:34:27 · 2030 阅读 · 2 评论 -
PowerBuilder中的字符串函数
1.POS函数:POS(string1,string2{,start})string1是父串,string2是查询子串,start是从第几个字符开始查找,缺省值为1返回值是long,返回子串在父串中的起始位置如果start 的值超过string1的长度,则返回02.MID函数:截取指定长度字符传mid(要截取的字符串,开始位置,截取长度)返回值string如果开始位置大于字...原创 2018-08-14 19:01:32 · 4896 阅读 · 2 评论 -
PowerBuilder中创建用户对象Class
主菜单file-new-PB object-custom class,即可新建一个costom class,在弹出的界面里编写你类的函数(记得给它一个函数名)如果想添加其它函数,主菜单insert-function即可添加类成员变量是用屏幕左下角第4个标签“Declare Instance Variables”。编写完成后,保存这个类并给它一个名字。使用时,先定义此类的一个实例,然后即可使用,比如...原创 2018-08-07 16:35:01 · 2719 阅读 · 0 评论 -
PowerBuilder多窗口之间传递参数的方法
一:知识介绍最简单的方法:可以直接定义全局变量主窗口、子窗口都可以直接对它操作注意:全局变量值为主\子窗口最后赋值的值 在PowerBuilder中函数OpenWithParm,CloseWithReturn,OpenSheetWithParm,windowname.OpenUserObjectWithParm等都有一个在进行窗口操作(打开或者关闭)时存入Message消息对象的参...原创 2018-08-07 18:20:24 · 2389 阅读 · 0 评论 -
PB连接SQL数据库
总体来说分为两大步:第一步:添加用户DSN第二步:添加ODBC连接1>.添加用户DSN1.选择DB Profile 2.选择ODBC/Utilities/ODBC Administrator3.添加用户DSN,点击添加5.选择SQL Server Native Client6.配置数据源相关信息,此处的数据源名称在将来连接数据库的代...原创 2018-08-03 11:46:47 · 3380 阅读 · 6 评论 -
PowerBuilder中的常用事件
1.window中的事件 事件名 触发的时机01.Activate 在窗口激活之前触发02.Clicked 当用户用鼠标单击窗口的空白区域(没有控件的区域)时触发03.Close 当关闭窗口时触发04.CloseQuery 当清除或关闭窗口时触发。然...转载 2018-08-12 19:44:16 · 3113 阅读 · 0 评论 -
PowerBuilder(Quick Select型)动态数据窗口的创建和使用
1.File/New/Grid/Quick Select2.选择相应的表,选择字段,点击ok(此步骤时间里在PB已经和数据刻建立数据源连接)点击ok/next/finish3.设置数据查询,点击菜单栏的Design/DataSource4.设置sql查询过滤条件,动态参数前要加用冒号5.此时参数还未设定,点击Design/Retrieval Arguments......原创 2018-08-08 10:25:20 · 1301 阅读 · 0 评论 -
数据库中字段值正常,但是PB中为char(0)
数据库中字段值正常,但是PB中为char(0),这个问题曾恶心了我很久,解决办法如下:找到这个数据窗口,然后右击选择Edit source,将char(0),修改为你想要的长度:...原创 2018-12-03 11:09:33 · 860 阅读 · 0 评论