aardio 官方社区

用户名  找回密码
 注册会员

QQ登录

只需一步,快速开始

帖子
查看: 10118|回复: 2

atom激活窗体大小被还原

[复制链接]

4

主题

6

回帖

70

积分

一级会员

积分
70
发表于 2014-2-27 15:52:53 | 显示全部楼层 |阅读模式
如题,首次启动时,界面在屏幕工作区内最大显示。
当重复启动时,界面缩小,被还原到屏幕中间显示。
这是什么原因呢?求解。

  1. import win.ui;
  2. import web.layout;
  3. import web.layout.behavior.windowSizer;
  4. import web.layout.behavior.windowCommand;
  5. import win.ui.atom;
  6. import win.ui.minmax;

  7. var atom,hwnd = winform.atom("D443D5F9-EC78-4276-9FEE-677B564DB9D2");
  8. if(!atom){
  9.         win.show(hwnd, true);
  10.         win.setForeground(hwnd);
  11.         win.quitMessage();
  12.         return;
  13. }

  14. wbLayout = web.layout(winform);
  15. win.ui.minmax(winform);
  16. winform.hitmax();

  17. win.loopMessage();

复制代码

27

主题

646

回帖

4138

积分

超级版主

积分
4138
发表于 2014-2-27 17:16:11 | 显示全部楼层
atom原子窗体在找到冲突窗体以后会还原显示。
用户重新启动了程序,他可能希望看到的是启动的初始状态。

如果你觉得这样不合适,可以自己实现显示窗体这部分:
import win.ui;
/*DSG{{*/
var winform = win.form(text="aardio Form";right=599;bottom=399)
/*}}*/

//创建原子窗体
import win.ui.atom;
var atomId,hwnd = win.ui.atom.find("D443D5F9-EC78-4276-9FEE-677B564DB9D22")
if( atomId ){
    win.show(hwnd, true);
    win.setForeground(hwnd);
    win.quitMessage();
   
return;
}
else {
   
winform._atomId =  process.atom.add("D443D5F9-EC78-4276-9FEE-677B564DB9D22");
    win.property.set(winform.hwnd, win.ui.atom._unique_prop_name, winform._atomId ); 
}
  

winform.hitmax();
win.loopMessage();


4

主题

6

回帖

70

积分

一级会员

积分
70
 楼主| 发表于 2014-2-28 10:29:05 | 显示全部楼层
非常感谢版主!
您需要登录后才可以回帖 登录 | 注册会员

本版积分规则

手机版|未经许可严禁引用或转载本站文章|aardio.com|aardio 官方社区 ( 皖ICP备09012014号 )

GMT+8, 2025-6-15 11:07 , Processed in 0.059596 second(s), 22 queries .

Powered by Discuz! X3.5

Copyright © 2001-2024 Tencent Cloud.

快速回复 返回顶部 返回列表