各位大侠,如何解决窗口放大缩小的问题?高分赠送

djkwhq 2003-03-12 09:20:45
我做了一个窗口,我想点窗口右上角最大化按钮事变大,点恢复按钮事变回原来。pb自带的例子我看过,不太好懂。各位大侠能否提供给我一个原码,让我瞧瞧?
...全文
103 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
zjyx 2003-03-12
  • 打赏
  • 举报
回复
我试着做了一下,以作参考:

定义两个窗口级的变量: long il_oldwidth,il_newwidth

resize事件
il_oldwidth =il_newwidth
il_newwidth =this.width
if il_oldwidth =0 then il_oldwidth =ll_newwidth

cb_1.width =cb_1.width +(ll_newwidth -ll_oldwidth)*1 //这里*1 是控件对于窗口改变
//所作的反映,应是一个百分数
这样的话,你可以随意调整窗口变化时cb_1相对于窗口的宽度
高度,X,Y同理也可以实现!
zjyx 2003-03-12
  • 打赏
  • 举报
回复
那么我也没有现成的函数

但是你可以自己写,以窗口作为参照物,在窗口改变后得到窗口的高宽XY然后调整控件的高宽XY

gwolfupb 2003-03-12
  • 打赏
  • 举报
回复
在窗口的resize事件里调整按钮的大小
djkwhq 2003-03-12
  • 打赏
  • 举报
回复
我用的不pfc.
zjyx 2003-03-12
  • 打赏
  • 举报
回复
在activate事件里编程

如果不是用PFC的话,那就自己写函数吧,选定一个参照物,调整控件的:高,宽,X,Y
zjyx 2003-03-12
  • 打赏
  • 举报
回复
你是不是用的PFC结构呢,如果是的话,那就好办了!

of_SetResize(true)

inv_resize.of_Register(cb_1, 0, 0, 50, 100)左上右下
zjyx 2003-03-12
  • 打赏
  • 举报
回复
手误,敲错了

il_oldwidth =il_newwidth
il_oldheight =il_newheight
messagebox('',this.width)
il_newwidth =this.width
il_newheight =this.height

if il_oldwidth =0 then il_oldwidth =il_newwidth
if il_oldheight =0 then il_oldheight =il_newheight

cb_1.width =cb_1.width +(il_newwidth -il_oldwidth)*0.3 //这后面的数还是你控件想
cb_1.height =cb_1.height +(il_newheight -il_oldheight)*0.1 //针对窗口变化的数
cb_1.x =cb_1.x +(il_newwidth -il_oldwidth)*0.5
cb_1.y =cb_1.y +(il_newheight -il_oldheight)*0.5

这样应该可以了
LeoKing 2003-03-12
  • 打赏
  • 举报
回复
PB自带例子里有这方面的说明,自己看看;或者直接拷过来用。
一般都是根据窗口中各控件的类型进行判断、调整的,以前有过的,自己搜搜吧!
djkwhq 2003-03-12
  • 打赏
  • 举报
回复
ll_newwidth ll_oldwidth 指的是什么??

1,109

社区成员

发帖
与我相关
我的任务
社区描述
PowerBuilder 相关问题讨论
社区管理员
  • 基础类社区
  • WorldMobile
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧