如何在PB中插入图片

合集下载

pb教程第五章[教学]

pb教程第五章[教学]

第五章数据窗口数据窗口是PowerBuilder的一大特色,PowerBuilder作为一种数据库前端开发工具,操作的核心是数据库中的数据。

而数据窗口是一个对象,它包含了对数据库中的数据进行特定操作的信息。

只要定义好一个数据窗口对象,以后就可以在多个应用程序中使用这个数据窗口对象,总之,可以把数据窗口看作封装了对数据库中的数据操作的对象,它极大地方便了应用程序对数据库的使用。

5.1 建立数据窗口对象5.2 对数据窗口的操作第五章数据窗口5.1 建立数据窗口对象要建立数据窗口对象,系统首先必须与要访问的数据库相连,这里不妨连接PowerBuilder 自带的范例数据库POWERSOFT DEMO DB V6(这里版本不同,数据库的名字也不同,可能会是V5,笔者用的是v6.0,所以自带的是V6),接下来就可以创建数据窗口对象。

单击POWERBAR工具条上的DATA WINDOW按钮,系统弹出SELECT DATAWINDOW对话框,对话框中列出了当前数据库中可用的数据窗口对象。

单击NEW按钮,开始创建一个新的数据窗口对象。

弹出的NEW DATAWINDOW用来选择要创建的数据窗口对象的数据源和显示风格。

从对话框中可以看出数据窗口对象可以有五种数据源和十一种数据显示风格。

这里并不想一一介绍,只介绍其中最常用的几种。

5.1.1 数据显示风格首先看数据显示风格,为了看出各种显示风格的区别,首先选定数据源统一为QUICK SELEC T,然后观察不同显示风格所显示出的数据样式的差别。

选中FREEFORM显示风格,然后单击OK按钮,弹出的QUICK SELECT对话框中选中DEPARTME NT表,单击ADD ALL按钮选中表的所有列,然后单击OK按钮关闭对话框。

单击PAINTERBA R工具条上的PREVIEW按钮,DATAWINDOW画板上显示的数据就是FREEFORM风格的,可以看出FREEFORM风格的数据的特点是一个字段占一行,字段的值就显示在字段的标题后面。

PB教程

PB教程

POWERBUILDER教程第一章概述1.1特点1.事件驱动在事件驱动方式中,程序的运行没有固定的流程,程序的代码也是为各种可能发生的事件编写,当程序开始运行后,它可以接受来自系统、用户或其他应用程序触发的事件,然后执行事件代码。

建立窗口、控件和其他应用部件时都含有一组预定义的事件。

例如:clicked(单击),用户也可以定义自己的事件。

2.面向对象Windows应用程序中常见的窗口、菜单、控件在powerbuilder中都是一个个对象。

同时,也可以创建自己的用户对象。

每个对象都有自身的特征和行为(属性、事件和函数)。

Powerbuilder提供了基础类库PFC,它为应用程序开发提供了许多可重用的预定义类和对象,利用基本类库PFC可以快速开发高质量、重用好的应用程序。

3.Powerscript语言Powerbuilder中,所有的处理逻辑都是用powerscript语言编写,powerscript是PowerBuilder是专用语言。

4.强大的数据库窗口对象数据窗口对象是PowerBuilder中的一种对象类型,是专门为访问后台的数据库服务的,在数据窗口对象中可以定义数据的来源和数据的显示风格,这样在应用程序就可以把精力完全放在程序的流程控制上,而不用关心具体数据的来源。

如果需要使用数据库中不同的数据,也只要对数据窗口对象进行修改就可以。

5.其他特点支持internet、支持分布式应用、支持多平台、支持大多数关系型数据库(Sybase、MS SQLSERVER、ORACLE等等以及ODBC等其他数据源)等等1.2安装略注:升级至7.0111.3开发环境IDE1 菜单栏图标第一章库文件工具栏图标第二章对象编辑工具栏图标第三章库文件编辑区第四章对象编辑区第五章Datawindow编辑器1.4 预备知识一个PowerBuilder应用程序一般由若干个窗口组成,每个窗口有若干个控件(如按钮、菜单、文本等),每个对象或控件都有若干个事件(如按钮的单击或双击等),每个事件将对应一段程序。

pb调用url()函数实例

pb调用url()函数实例

一、URL的作用及重要性在互联网世界中,URL(统一资源定位符)扮演着非常重要的角色。

它是互联全球信息站用来标识资源的位置区域,不仅可以定位到特定的网页、图片、视瓶等内容,还能够指示浏览器如何访问这些资源。

正确使用和理解URL对于全球信息站的访问速度、搜索引擎优化、用户体验等方面都至关重要。

二、URL()函数的基本概念URL()函数是前端开发中常用的一个函数,它主要用于在CSS中引用其他资源,例如图片、字体等。

通过URL()函数,可以将资源的位置区域嵌入到样式表中,从而实现对这些资源的引用和展示。

URL()函数还能够根据需要进行资源路径的转换和定制,使得前端开发者能够更加灵活地控制页面上的各种元素。

三、URL()函数的语法和用法URL()函数的语法非常简单,通常由一个或多个参数组成。

最常见的用法是将资源的相对路径作为参数传入URL()函数中,然后通过该函数生成该资源的绝对路径。

例如:```cssbackground-image: url('images/background.jpg');```在这个例子中,URL()函数的参数是相对于CSS文件的路径,但它最终会被解析为全球信息站根目录下图片文件的绝对路径。

四、URL()函数的常见问题及解决方法尽管URL()函数在前端开发中被广泛应用,但依然存在一些常见的问题需要注意。

其中,最为常见的问题就是资源路径定位错误,导致页面上的图片、字体等无法正常显示。

为了解决这个问题,开发者需要对URL()函数中的路径进行仔细检查,并确保路径的正确性和一致性。

还需要注意不同环境下资源路径的变化,例如开发环境和生产环境可能有不同的路径规则,需要做出相应的调整。

五、URL()函数的性能优化由于URL()函数会在加载页面时实时解析生成资源的绝对路径,因此在页面中过多地使用URL()函数可能会对页面的加载速度产生一定的影响。

为了优化性能,开发者可以考虑将一些静态资源的绝对路径硬编码到样式表中,而不是依赖URL()函数来动态生成。

PowerBuilder控件使用手册

PowerBuilder控件使用手册

PB控件使用介绍一、PB中使用Microsoft Web Browser控件步骤:在pb的某窗口中加入OLE对象,选择Insert control(插入控件),然后选中"Microsoft WEB 浏览器",(随系统而定的版本),就可以在这个窗口直接使用IE浏览器控件了。

常用函数:(对这个ole控件取名叫ole_web)ole_web.object.navigate(string ls_url) file://浏览某url,譬如:ole_web.object.navigate('') 就是浏览 页面,当然支持本地文件,也支持本地图片文件的浏览,如jpeg,jpg,gif,png等等,如果是不支持的文件,则直接弹出选择打开文件对话框,和ie一模一样。

ole_web.object.goback() file://回退(如果没有内容可退,则会弹出错误,可以屏蔽该错误)ole_web.object.goforward() file://前进,同上常用事件:documentcomplete : url请求的页面完成;downloadcomplete:url中请求的下载完成;常用属性:ole_web.object.width :pixel高度,需要转换为pbunit高度才可以调整ole_web.object.height:同上ole_web.object.offline:离线方式,true,false两者之一你甚至可以用pb写出一个和ie类似的界面用来进行浏览网页或图片。

二、在程序中打印在程序中如何提供打印功能呢?这里有三种调用打印函数的格式可供选择。

1. 对数据窗口控制或者数据窗口可以使用这种打印格式。

DATAWINDOWNAME.Print(cancel_window)这里cancel_window 是一个布尔值,它指出是否要显示一个用户可以用来中止打印动作的窗口。

PB控件说明

PB控件说明

[PB]-控件(一)////////////////////////////////命令按钮-CommandButton-cb_1图象按钮-PictureButton-pb_1【事件】◆Clicked控件单击时◆Constructor在窗口的打开事件之前立即触发◆Destructor在窗口的关闭事件之后立即触发◆DragDrop当被拖动对象释放时触发◆DragEnter被拖动对象的中心通过边缘进入时触发◆DragLeave被拖动对象的中心离开时触发◆DragWithin被拖动对象的中心位于其内时触发◆GetFocus在接受焦点之前(在选中并激活之前)触发◆LoseFocus当失去焦点时触发◆Other当非powerbuilder事件消息发生时触发◆RButtonDown鼠标右键按下时触发◆Help【属性】命令按钮有24个属性,图形按钮除了具有和命令按钮完全相同的24个属性外,还有另外5个属性用来设置图形和文字的显示。

▲Visible取值为False时,不显示此按钮▲Enabled取值为False时,按钮为灰色,不可用▲Default取值为True时,表示该按钮是缺省按钮,当用户没有选择控件,按Enter键时触发该按钮的Clicked事件▲Cancel取值为True时,表示当用户单击Esc键时,可以触发按钮的Clicked事件▲FlatStyle////////////////////////////////列表框-listBox图形列表框-pictureListBox【属性】listbox有35个属性,picturelistbox有40个属性,其中35个和listbox完全相同,另外5个用来设定图形的相关属性。

▲Sor ted,指定列表框中的内容是否排序,不管数字还是字符都按照字符处理,按照ASCII大小进行排序▲VscrollBar、HscrollBar,指定当项目纵向或横向显示不下时,是否显示滚动条▲MultiSelect,此属性为True时表示使用鼠标可以直接同时选中多项▲ExtendSelect,也有进行多项同时选择的属性,但选择方法不同于MultiSelect属性,必须配合Ctrl或Shift按钮,当同时指定这两个属性时,ExtendedSelect属性将会屏蔽MultiSelect属性▲DisableNoScroll,此属性为True时,不管是否必须要滚动条,都显示滚动条;为False时只有在项目多,需要显示滚动条时显示滚动条▲ItemPictureIndex[]integer类型的只读数组,使用该数组可以获取每个图片项目的索引。

PB中图形按钮的建立方法

PB中图形按钮的建立方法

PB中图形按钮的建立方法发表:zqhsky 阅读:次关键字:图形按钮字体:[大中小]本文提出并实现了在PowerBuilder中制作图形按钮的方法,这种图形按钮除了具有普通按钮的功能外,还具有显示提示信息(Tip)、按钮局部区域显示图形、动态改变按钮上的图形等功能。

---- 在Delphi、C++Builder等多种快速开发工具中,我们经常用到图形按钮,而在PowerBuilder 中,所提供的图形按钮功能并不完善,如图形占据整个按钮,而不是显示在一侧,程序运行时没有提示信息(Tip)等。

为了使PowerBuilder编写出来的程序更具专业化,有必要对其进行功能上的扩充。

---- 1 设计思路---- 在普通按钮上放置一位图,程序运行时,在按钮被按动过程中让按钮上的图片随之发生改变,并且当按钮上的位图被按动时,利用WindowAPI函数[1]SetCapture()来捕获鼠标,并指定到按钮上,以实现按钮被按动的操作,利用ReleaseCapture()来释放鼠标捕获,同时利用WindowAPI函数为其提供提示信息。

为了方便使用图形按钮,将其封装成用户对象,以便在窗口中调用。

---- 2 设计过程---- 2.1 图形按钮的制作---- 创建一个定制的(custom)可视用户对象,在其中放置一个按钮(CommandButton)控件(name = cb_1,text = ‘查询’,text前面留几个空格是为了不让位图遮住按钮上的文字)和一个图片(Picture)控件(name = p_1),并且将图片控件放在按钮控件一侧(如左侧),将此用户对象保存为uo_picbutton。

在此用户对象中声明两个实例变量:uo_tooltip ToolTip //显示提示信息的用户对象实例Boolean capturemouse = false//捕获鼠标的标志,捕获时为true、释放时为false在Local External Functions…中加入两个WindowAPI函数[1]声明:Function ulong SetCapture(ulong hWnd) Library "USER32.DLL"//功能——捕获鼠标Function BOOLEAN ReleaseCapture() Library "USER32.DLL"//功能——释放鼠标---- 在此用户对象的事件中加入mousedown事件(对应事件ID为pbm_lbuttondown),mouseup事件(对应事件ID为pbm_lbuttonup),clicked事件(对应事件ID为pbm_bnclicked)。

pb程序中保存图片(经典)

pb程序中保存图片(经典)

方法一:文件保存在固定的路径下,数据库中存取文件路径和名称
方法二:数据库中用blob类型或者varbinary类型字段存储备注文件
方法三:在本地用OLE存储结构存储备注文件
1、OLE的基本概念
OLE是Object Linking Embedding(对象链结与嵌入)的缩写,它可以使windows应用程序共享数据和程序。
StreamMode!, Read!, LockRead!)
// Determine how many times to call FileRead
IF ll_filelength > 32765 THEN
IF Mod(ll_filelength, 32765) = 0 THEN
loops =ll_filelength/32765
2.4 OLE控件的激活方式
OLE控件的激活方式有offsite和in-place两种激活方式,offsite激活方式是指在PB应用程序的界面以外单独打开OLE对象,in-place激活方式是指PB应用程序的界面的原位置打开OLE对象。在数据窗口中的dbOLE默认的是offsite激活方式,而window中的OLE默认的激活方式是in-place。
tot_b = tot_b + b
//
IF i=1 then
st_1.text=string(tot_b)
end if
//
NEXT
FileClose(li_FileNum)
gb_photo=tot_b
UPDATEBLOB PJ_TP SET photo=:gb_photo WHERE AA='1' USing sqlca;

PB(5)

PB(5)

第五章基本控件的使用●PB中,窗口作为与用户交互的界面在应用程序的设计中是十分重要的,但是空白的窗口枚游泳,还需要加入一些使窗口具有一定功能的控件;●主要内容:控件简介控件属性的设置控件的基本操作基本控件的使用一、控件简介●控件是PB应用程序界面的重要组成部分;●用户通过窗口上的控件完成需要的操作,应用程序也通过控件向用户显示信息;●控件是系统预定义好的可视图形对象,通过把这些对象添加到窗口而直接使用它们;●控件并不单独保存,而是与相应的窗口一起保存在应用库中;●控件的分类激活动作型:主要用于响应用户的各种操作,包括命令按钮和图片命令按钮等;显示数据类型:主要用于对数据的操作,包括列表框,图片列表框,数据窗口,下拉列表框,下拉图片列表框,静态文本框,图形,列表视窗,树状视窗,单行编辑框,多行编辑框,编辑掩码控件,多格式文本编辑框,进度条,滚动条及OLE控件等;选择项类型:主要用于让用户在一个或多个选项中进行选择,包括单选按钮和复选框,还可以用组框控件对这些选项控件进行分组;修饰类型:主要用于修饰,使用户的窗口变得丰富多彩,包括图片,直线,矩形,圆脚矩形,椭圆等;●如何使用控件:(1)首先进入窗口编辑区;(2)在工具栏种选择控件工具;(3)选择所需的控件,将它添加到窗口中;二、控件属性的设置1.设置控件的名称●统一控件的名称会使用户在设计、维护应用程序时很方便;●PB给用户提供了一个统一的命名方法,控件的名称由两个部分组成:前缀和正名;●举例:cb_1,cb_exit●前缀用于区别控件,PB提供系统的缺省设置,正名可以是数字或表示功能、内容的名称;2.修改控件前缀●通过PB提供的功能修改缺省的前缀;●操作方法:使用Options对话框3.设置控件属性(1)静态的属性设置方法:●选中某一控件,在Properties窗口中,显示该控件的属性;●在属性页中填入要求的内容,完成静态的属性设置;(2)动态的属性设置方法:●在程序中,利用编写代码来设置控件属性●举例:在[open] 按钮的clicked事件代码中打开一个对话框,并且使[delete] ,[search],[insert] 三个按钮处于无效状态;open (w_student)cb_delete.enabled=falsecb_search.enabled=falsecb_insert.enabled=false●动态设置属性的方法在很多时候都有应用,能使程序条理清晰;三、控件的基本操作1.放置控件;●在窗口编辑区选择工具栏中的控件下拉图形列表框中的相应控件;●在窗口中的合适位置按下鼠标左键,就把该控件放到要求的位置了;●在布置控件位置的时候,应全面考虑尽量多用“GroupBox”控件,这样会使条理变得清晰,便于用户使用、维护;●后代对象继承祖先对象的脚本;2.选中控件●选中单个控件;●选中多个控件:用鼠标,使用Ctrl键;●使用Control List视图选控件;3.移动控件●使用鼠标:用于移动较长距离;●使用键盘:用于精细调整;●用方向键移动控件的距离是可调节的:一次移动一个象素,一次移动一个格(snap to grid)4.删除控件●选中要被删除的控件;●使用菜单,工具栏,使用键盘Del键5.复制控件●选中一个控件;●使用菜单,工具栏,使用键盘Ctrl+C复制;●在相应的地方,使用菜单,工具栏,使用键盘Ctrl+V粘贴;6.改变控件的大小●选中要编辑的控件;●使用鼠标移到该控件的边界,朝要改变大小的方向移动,直到控件已经达到所需大小的时候松开鼠标左键;●用键盘:选择要改变大小的一个或多个控件,按住Shift键和相应的方向键进行大小的调整;7.控件布局●在窗口中放入多个控件时,需要调整,使界面美观;●使一组控件按边缘对齐;●使一组控件之间等距离;●使一组控件具有相同的尺寸;●对齐控件可以通过菜单,可以通过PB工具栏上的布局工具进行;8.焦点与设置控件的Tab值●焦点是接收用户鼠标或键盘输入的能力,当控件具有焦点时,才能接收用户的输入;●当对象得到焦点时,将产生GotFocus事件;当对象失去焦点时,将产生LostFocus事件;●程序运行时,窗口上的大多数控件从外观上就可以看出是否得到焦点;●控件得到焦点的途径:运行时用户选择对象;运行时用户使用访问键选择对象;在代码中使用SetFocus()对象函数设置焦点;●使用键盘上的Tab键会使当前选定的项目按一定的顺序自动切换;●每个放置到窗口上的控件,PB都会为它提供一个Tab 值(0-99),这个值于控件的水平和垂直位置有关;●用户可以手动修改它,使用PB工具栏上的Tab Order工具;●如果要在使用Tab键时跳过某一个控件,可以使该控件的Tab值设置为0;四、基本控件的使用●控件种类多,功能强大;●想充分利用控件的功能来为应用程序的设计服务,就要对各个控件有详细的了解;●介绍一些常用的基本的控件1.设置控件常用属性●设置控件标题:显示在控件上的文字;标题的文字提示;字体字型;对齐方式;●定义访问键:使用Alt和任意一键可以选中该控件;对命令按钮,复选框,单选按钮这类有标题的控件,在定义标题时,在作为访问键的字符前放上&字符;●指定控件的可访问性:使用Visible属性:当Visible复选框被选中时,该控件显示在窗口中,如果希望某个控件初始是不显示,则不选中Visible复选框;使用Enabled属性:当Enabled复选框被选中时,该控件处于活动状态,它能够响应用户的操作;如果某个控件只是显示而不响应用户的操作;2.按钮(1)CommandButton(命令按钮)●最常用的按钮之一,当用户单击按钮时,将触发一个操作;●总是三维显示,不能修改颜色;●通常情况下,如果窗口上按钮不多的话,沿窗口底部排列按钮,否则最好在窗口右部排列按钮;●常用属性:Name,Text,Visible,Enabled;●Default:选中时,按钮成为当前窗口的缺省按钮,不管焦点是否设置在其它控件上,只要用户按下[Enter]键,将触发该缺省按钮的clicked事件;●Cancel:选中时,按钮将成为当前窗口的取消按钮,用户按下[Esc]键,将触发取消按钮的clicked事件;●一组命令按钮中只能指定一个Default按钮和一个Cancel按钮;●命令按钮的事件:命令按钮有十几个事件,其中最常用的、最重要的事件是Clicked事件,它在被单击时触发;(2)PictureButton (图片按钮)●它的功能和使用方法与命令按钮完全相同;●当希望用一幅贴切的画面而不仅仅是文字表示一个按钮时,应选用图片按钮。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
相关文档
最新文档