怎么在mdi_1里显示一张图片或一个网页,在线等,解决即放分

j9dai 2004-12-31 09:50:50
一个MDI窗体左侧是一个treeview,我想在右侧的mdi_1显示一张图片或一个网页,当然它们会随着mdi_1的大小变化而变化,该怎么做啊,急
...全文
276 16 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
16 条回复
切换为时间正序
请发表友善的回复…
发表回复
yfzhu 2005-05-11
  • 打赏
  • 举报
回复
修改一下 opensheet 的参数试试
j9dai 2005-01-07
  • 打赏
  • 举报
回复
To liuyxit(深蓝(O_0)) :
还是有"√ 1",怎么把它去掉但打开其它子窗口时要保留这个功能,因为我单击它时其它打开的子窗口都看不见了,甚至这个主菜单都不能用了;就是如何使这个窗口得不到焦点始终放在最底层
j9dai 2005-01-07
  • 打赏
  • 举报
回复
人呢,自己顶一下
liuyxit 2005-01-06
  • 打赏
  • 举报
回复
试过了,系统自动会在第一个菜单的最后一个子菜单下添加一个"√ 1",我想不要这个1,但打开其它子窗口时要保留这个功能,怎么办?还有,系统有一个全部关闭、全部最小化菜单,当执行这个菜单时如何不使此CHILD窗口关闭、最小化
===>
在框架的resize事件加入
if not isvalid(w_back) then
openSheet(w_back.....)
end if
怎不试?
j9dai 2005-01-06
  • 打赏
  • 举报
回复
晕~没人,自己顶一下
j9dai 2005-01-05
  • 打赏
  • 举报
回复
在resize事件里写?
如果执行了“全部关闭”功能怎么办?
liuyxit 2005-01-04
  • 打赏
  • 举报
回复
在框架的resize事件加入
if not isvalid(w_back) then
openSheet(w_back.....)
end if
j9dai 2005-01-04
  • 打赏
  • 举报
回复
试过了,系统自动会在第一个菜单的最后一个子菜单下添加一个"√ 1",我想不要这个1,但打开其它子窗口时要保留这个功能,怎么办?还有,系统有一个全部关闭、全部最小化菜单,当执行这个菜单时如何不使此CHILD窗口关闭、最小化
liuyxit 2005-01-03
  • 打赏
  • 举报
回复
简单的方法:
在MDI窗口打开时,同时打开一个最大化并带图片框的CHILD窗口,去掉它的标题栏。
j9dai 2005-01-03
  • 打赏
  • 举报
回复
呜~`还没解决啊
j9dai 2004-12-31
  • 打赏
  • 举报
回复
MDI左边的TreeView我就是这样实现的,我现在想做的是在MDI_1中即下面所说的ClientArea中放一个图片可网页

把MDIWindow的ClientArea打开(Resize)。ClientArea可视为一种Control,PB将它的名字内定为MDI_1。
  //Example//m1,m2,r1,r2areallinteger.
  //movetheclientareatobeginat(m1,m2).mdi_1.Move(WorkspaceX()
+m1,WorkspaceY()+m2)
  //Resizetheclientareabasedonthevalue(r1,r2)yougived.mdi_1.Resize(r1,r2)
需要注意的是ClientArea打开後,区域内的Control会被盖掉。 //也就是说可不可以不覆盖区域内的Control,如能的话怎么实现
balloonman2002 2004-12-31
  • 打赏
  • 举报
回复
主要是要动态调整MDI CLIENT区域大小,详见下文:

《在MDI视窗内加入其他Controls,并使其在sheets视窗中正确显示》

http://www.china-askpro.com/msg12/qa55.shtml

并请参考PB自带帮助:

This example resizes the client area of a custom MDI frame window (that is, a frame window in which you've placed controls). P_logo is the control that's been placed on the window. The code belongs in the script for the frame's Resize event:

integer lw, lh

// Get the current workspace measurements
lw = This.WorkSpaceWidth()
lh = This.WorkSpaceHeight()
// Subtract the logo, MicroHelp from the height
lh = lh - (p_logo.Y + p_logo.Height)
lh = lh - MDI_1.MicroHelpHeight
// Add the distance between the top of the frame
// (just below the menu bar or toolbar, if any)
// and top of the workspace.
lh = lh + This.WorkspaceY( )
// Move the client area below the picture control
MDI_1.Move(This.WorkspaceX( ), &

p_logo.Y + p_logo.Height)

// Resize the client area using the calculated dims

mdi_1.Resize(lw, lh)
j9dai 2004-12-31
  • 打赏
  • 举报
回复
急啊
j9dai 2004-12-31
  • 打赏
  • 举报
回复
可是我一run,那图片就不见了啊,可能是被mdi_1覆盖了
balloonman2002 2004-12-31
  • 打赏
  • 举报
回复
图片可以用PICTURE控件显示,网页可以用WEB BROWSE控件显示

随大小变化只要处理相关对象的RESIZE事件即可
j9dai 2004-12-31
  • 打赏
  • 举报
回复
晕~能实现吗?今天怎么人这么少啊

604

社区成员

发帖
与我相关
我的任务
社区描述
PowerBuilder 控件与界面
社区管理员
  • 控件与界面社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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