草庐IT

MiGLayout

全部标签

java - 获取 Java Swing 中组件的布局约束

下面是我一直在处理的代码模型。publicclassPane{privatefinalJPanelpane;privateJPanelnamePanel;privatefinalJTextFieldpanIdField;publicPane(){pane=newJPanel();pane.setLayout(newMigLayout("","[][grow]","[][][][][]"));namePanel=newJPanel();pane.add(namePanel,"cell11,growx");panIdField=newJTextField();pane.add(panIdF

java - 如何使 MiGLayout 的行为像 Wrap Layout?

我想复制此处显示的示例:WrapLayout使用MiGLayout。我尝试了一些组合,但我很难让按钮自动换行随着容器缩小到新行。有人可以提供一个这样做的工作示例吗?这是程序的外壳:importjavax.swing.JButton;importjavax.swing.JFrame;importjavax.swing.JPanel;importnet.miginfocom.swing.MigLayout;publicclassMiGTestextendsJFrame{privateJPaneljPanel;privateJButtonjButton;publicstaticvoidmai

java - MigLayout 推送 VS 增长

这两个约束有什么区别?来自文档:PUSH-使组件所在的行和/或列随“权重”增长GROW-设置组件相对于同一单元格中其他组件的增长程度。那么,主要思想是缩小组件内外的尺寸? 最佳答案 了解fill,(column,row)grow,push协同工作很重要使用(component)grow来定义布局。(有两种不同的grow约束可以做不同的事情。)MigLayout是一个基于网格的管理器。(更准确地说,它最重要的模式是。)需要完成两个步骤:定义网格的列和行占用多少空间定义组件在分配的单元格中占据多少空间这就是fill,(column,ro

java - 在 Swing 组件的顶部绘画?

我将一个JPanel添加到一个JViewport,并且该面板还添加了其他几个面板。我正在尝试实现一种拖动选择,您可以通过拖动鼠标来选择多个组件。我面临的唯一问题是选择矩形被绘制在添加到主JPanel的组件后面。我怎样才能在它们上面作画?我的结构如下:JFrame->ContentPane->JLayeredPane->JScrollPane->JPanel->JPanel[].大学作业设计稿:如您所见,矩形位于其他面板的后面。 最佳答案 ThisiswhatI'malreadydoing(onamuchsimplerlevelobv

java - MigLayout 用法

熟悉MigLayout的问题抱歉想不出更合适的问题名称...我正在尝试创建一个最终如下所示的布局:+---------+---------+|btn1|btn2|+---------+---------+|||btn3|||+-------------------+调整窗口大小时,组件btn1和btn2应填充x轴(各占一半),组件btn3应填充x轴和y轴上的所有可用空间。您将如何实现这一目标?下面是一些代码:publicstaticvoidmain(String[]args){JFramewindow=newJFrame();window.setDefaultCloseOperatio

java - MigLayout中push、grow、fill有什么区别?

我看到grow和push接受一个可选的权重参数,但除此之外:grow之间的真正区别是什么,fill和push?文档对此不是很清楚。 最佳答案 据我所知,push只影响间隙,不影响元素。如果一个组件设置为fill,这意味着将所有子组件设置为grow,而grow影响组件直接。 关于java-MigLayout中push、grow、fill有什么区别?,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/que

java - Swing - 如何混合使用 JTextField 和 JTextAreas 并具有相同的视觉外观?

我正在使用miglayout创建一个表单,其中包含JTextFields(简短的输入答案)和JTextAreas(较长的答案)。问题是双重的。滚动Pane环绕文本区域周围的边框与文本字段的边框不匹配。textarea/textfield的宽度和位置不同,导致它们不能正确排列。alttexthttp://grab.by/3O0V从右/左变为右/填充后:alttexthttp://grab.by/3RMk您可以看到边界对齐,但仍然存在间隙。我尝试设置novisualpadding但这并没有解决问题。源代码:packagetest2;importjavax.swing.JFrame;impo

java - 如何...使用 MigLayout

我正在尝试创建一个如下所示的布局:+---+--------+---+||||||||+---++---+||||||||+---+--------+---+中央单元格的宽度应是其他单元格的两倍。我正在尝试用这样的代码实现这一点:valpanel=newJPanel(newMigLayout("debug","grow","grow"))panel.add(newJPanel)panel.add(newJPanel,"span22")panel.add(newJPanel,"wrap")panel.add(newJPanel)panel.add(newJPanel)但结果我所有的单元格

java - JScrollpane 需要缩小它的宽度

我有一个JScrollpane,里面有一个JPanel(面板包含一些JLabel)。我想调整滚动Pane的大小以实际更改其大小(可能低于内部组件的首选大小),而不仅仅是视口(viewport)的大小。目标是当用户将滚动Pane缩小得太小时,内部面板优雅地消失(在我的miglayout中使用特定的缩小优先级等)。 最佳答案 最好的方法可能是让包含的组件始终与视口(viewport)宽度相同。为此,第一个包含的组件(JViewPort的子组件,传递到JScrollPane构造函数或设置为viewportView)需要实现javax.sw

java - MigLayout JTextArea 在与 linewrap=true 一起使用时不会缩小

如果我像这样将JTextArea与MigLayout一起使用:MigLayoutthisLayout=newMigLayout("","[][grow]","[]20[]");this.setLayout(thisLayout);{jLabel1=newJLabel();this.add(jLabel1,"cell00");jLabel1.setText("jLabel1");}{jTextArea1=newJTextArea();this.add(jTextArea1,"cell0121,growx");jTextArea1.setText("jTextArea1");jTextAr
12