数据库

本类阅读TOP10

·SQL语句导入导出大全
·SQL Server日期计算
·SQL语句导入导出大全
·SQL to Excel 的应用
·Oracle中password file的作用及说明
·MS SQLServer OLEDB分布式事务无法启动的一般解决方案
·sqlserver2000数据库置疑的解决方法
·一个比较实用的大数据量分页存储过程
·如何在正运行 SQL Server 7.0 的服务器之间传输登录和密码
·SQL中两台服务器间使用连接服务器

分类导航
VC语言Delphi
VB语言ASP
PerlJava
Script数据库
其他语言游戏开发
文件格式网站制作
软件工程.NET开发
使PB窗口居中

作者:未知 来源:月光软件站 加入时间:2005-2-28 月光软件站

在窗口属性的Position页中可以粗略地设置窗口的弹出位置。然而,你并不知道客户机的屏幕分辨率是多少(800×600还是1024×786),不如在Open事件中加入下列代码使其居中:

  GetEnvironment(Env)//获取客户机环境信息

  dy=(Pixelstounits(Env.ScreenHeight,YPixelsToUnits!)this.Height)/2

  dx=(Pixelstounits(Env.ScreenWidth, XPixelsToUnits!)this.Width)/2

  this.Move(dx,dy)

  //EnvEnvironment类型,dx,dyLong类型3.使用ActiveX控件

VB可以直接引用ActiveX控件,而PB只能通过“控件嵌套”的方法来引用。这种方法需要借助OLE容器。下面以Animation控件为例说明引用过程及约定。

窗体设计时,选择OLE,在弹出的“Insert Object”对话框中选择“Insert Control”页,在Control Type下列出了系统中所有注册过的ActiveX控件,选择“Microsoft Animation Control”。对ActiveX控件的属性和方法的引用必须遵循“OLE控件.Object.属性(或方法)”的规则。如下代码通过调用Animation控件的属性和方法来自动播放一个视频剪辑:

  ole—1.Object.AutoPlay =True

  //设置为自动播放    ole—1.Object.Open(C:\Program Files\Joint\FireWork.avi) //打开一个Avi文件

若你的PB程序中使用了ActiveX控件,最好把相应的OCX文件与你的程序一起发布,并在安装程序中进行注册,因为客户机不一定注册了相应控件。注册的方法是用Regsvr32,若采用InstallShield来制作安装程序,也可以把所有要注册的OCX文件放到一个File Group中,然后将它的“SelfRegistered”设置成Yes来自动注册。

  4.操纵LOB

大对象(Large OBject)通常指大文本和大二进制对象,几乎每一种数据库都支持它。在PB中可以用UpdateBlobSelectBlob语句来对它们进行处理。

(1)UpdateBlob来把大对象数据写入数据库

在编写管理软件时,要求把员工的照片(Bmp文件)和工作经历(Doc文件)保存在数据库中,而不是像以前一样保存它们的文mpno=9925; //把图像数据写入数据库

  If SQLCA.SQLNRows0 Then Commit;

  End If

注意,FileRead一次只能读取32K,若文件大于32K应分多次读取;UpdateBlob执行成功与否不能用SQLCodeSQLDBCode来判断,而要用SQLNRows是否大于0来判断。

  (2)SelectBlob从数据库中读取大对象数据

要查看员工的照片或工作经历,就应把相关信息从数据库中读出来。主要代码如下:

Blob pic //pic定义为二进制大对象(Binary large object

SelectBlob photo Into :pic From emp Where empno=9925;//把图像数据读到变量pic

p_1.SetPicture(pic) //用图像控件显示图像

  5.编译技巧

  (1)没有必要将pbl编译成机器码dll,即不要选择“Machine Code”。那样做意味着你至少要等待半个小时。编译成伪码pbd就行了。

(2)把程序中用到的icobmp等文件打包到目标代码中。方法是:用记事本创建一个扩展名为pbr的资源文件,它的每一行是一个带完整路径的文件名,用于告诉编译器到何处去找用到的资源。

(3)PB应用程序要独立运行,必须把Sybase\Shared下的几个共享库与你的程序一起发布,它们是:pbvm60.dllpbodb60.dllpbdwe60.dll。后台若使用MS SQL Server,还得带上pbmss60.dll;若使用Sybase SQL Anywhere,要带上pbo7360.dll;若使用Informix V7.x,要带上pbin760.dll


相关文章

相关软件