如何以编程方式使用TopComponent
以编程方式设置Netbeans Platform Application
窗口的大小?我已经在构造函数中尝试了setSize(500,500)
,但它没有用。
答案 0 :(得分:0)
我不确定这是否有用,但模块可以包含对layer.xml中设置的更改,这些更改会改变模式起始位置的大小/位置。您的顶级组件将停靠在其中一种模式中,因此更改其大小应更改顶部组件的大小。
例如模块中的layer.xml:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE filesystem PUBLIC "-//NetBeans//DTD Filesystem 1.2//EN" "http://www.netbeans.org/dtds/filesystem-1_2.dtd">
<filesystem>
<folder name="Windows2">
<folder name="Modes">
<file name="editor.wsmode" url="modesettings.xml"/>
</folder>
</folder>
</filesystem>
这指向同一目录中的modesettings.xml。
<?xml version="1.0" encoding="UTF-8"?>
<mode version="2.4">
<module name="org.netbeans.core.ui/1" spec="1.2"/>
<name unique="editor"/>
<kind type="view"/>
<state type="separated"/>
<constraints>
<path orientation="horizontal" number="20" weight="0.3"/>
<path orientation="vertical" number="20" weight="0.5"/>
</constraints>
<bounds x="137" y="192" width="660" height="200"/>
<frame state="0"/>
<empty-behavior permanent="true"/>
</mode>
您还可以使用以下内容更改启动时的模式边界:
@OnShowing
public class ModeBoundsSetter implements Runnable {
@Override
public void run() {
WindowManager wm = WindowManager.getDefault();
Mode mode = wm.findMode("editor");
if(null != mode) {
mode.setBounds(new Rectangle(0,0,2000,100));
}
}
}