草庐IT

java - GridBagLayout 没有正确对齐图像

最初我有一张甲板图像和图像下方的文本“Deck”,看起来不错publicclassGuiTutextendsJPanel{privateGridBagConstraintsc=newGridBagConstraints();privateJLabeldeckLabel=newJLabel();publicGuiTut(){setLayout(newGridBagLayout());try{deck=ImageIO.read(newFile("resources/images/deck.jpg"));}catch(Exceptione){}c.gridx=0;c.gridy=0;JLab

java - Closeable JTabbedPane - 关闭按钮的对齐方式

我已经实现了自己的可关闭JTabbedPane(基本上遵循了here的建议-通过扩展JTabbedPane并覆盖一些方法并调用setTabComponentAt(...))。它完美地工作,除了一件事-当有太多选项卡无法放在一行时(当有2行或更多行选项卡时),十字按钮/图标未与选项卡右侧对齐,但它保持在旁边标签标题,看起来很难看。我试过Java教程中的演示,它遇到了同样的问题。我想要的是十字按钮/图标始终对齐到最右边,但文本始终对齐到中心。这可以通过一些布局技巧来实现吗?注意:我不想实现自定义TabbedPaneUI,因为这会导致其他问题。更新我被迫使用Java6完整代码如下,只需运行它

java - 在 Java 中释放非对齐指针?

这在Objective-C中很容易追踪,但在Java中我认为这种事情是不可能的。我看到的错误是:java(7198,0x124a13000)malloc:***errorforobject0x1003109c1:Non-alignedpointerbeingfreed***setabreakpointinmalloc_error_breaktodebug如何在Java中设置这种类型的断点?或者,我将如何追踪相关对象?该内存地址不是哈希码,对吧? 最佳答案 您不会在Java本身中调试此类内容,因为这似乎是JVM本身的错误或某些流氓na

java - 将 JComponents 与 JPanel 的左侧和右侧对齐

我有一个包含两个JComponent的JPanel,比如说两个JButton,btnLeft和btnRight。我希望这两个按钮水平对齐,我希望btnLeft位于JPanel的左侧,btnRight位于JPanel的右侧,中间留有任何空间。我知道我可以使用BoxLayout通过添加一个水平支柱来做到这一点我必须在其中指定空间量,但是必须有一种更简单的方法而不必指定中间的剩余空间是。我该怎么做? 最佳答案 听起来horizo​​ntalGlue就是您要找的东西:JComponentcomp=newJPanel();comp.setLa

java - 为什么即使每个字段都是 4 字节对齐的,Java 对象中仍存在内部碎片?

简介:我使用了JOL(JavaObjectLayout)tool为研究目的分析Java对象的内部和外部碎片。在这样做的过程中,我偶然发现了以下内容:x@pc:~/Util$java-jarjol-cli-0.9-full.jarinternalssun.reflect.DelegatingClassLoader#WARNING:UnabletoattachServiceabilityAgent.Youcantryagainwithescalatedprivileges.Twooptions:a)use-Djol.tryWithSudo=truetotrywithsudo;b)echo0

java - 如何将图像对齐到表格单元格的中心(SWT 表格)

我开发EclipseRCP应用程序时遇到了Table问题。我们在数据库中有一些boolean格式的数据,用户希望使用checkbox查看该字段。我尝试使用Button(SWT.CHECK)作为Table-Editor来实现它,但它运行得太慢了:(我尝试使用2个图像-选中和未选中的复选框,它有效,但我无法将它们居中对齐,它们会自动向左对齐。我什至找到了如何捕获SWT.MeasureItem和SWT.PaintItem事件并通过更改event.x字段手动处理它们,但是我遇到了一个问题-我目前无法获得正在测量或绘制的列,因为Event没有向我提供该信息。这是通过在重绘时修改事件数据来将图像居

java - 如何让 FlowLayout 像其他组件一样在底部对齐 JPanel?

我有一个案例,我将JPanel添加到FlowLayout,但它们没有将自己对齐到布局的底部。我正在使用此layout.setAlignOnBaseline(true)并将JLabel正确对齐到面板底部。但是,一旦这些标签本身包裹在面板中,它就不再有效了。这是我的意思的示例,顶部和底部有两个面板。importjavax.swing.*;importjava.awt.*;publicclassBadLayout{privatestaticfinalFontfont1=newFont("Arial",Font.BOLD,14);privatestaticfinalFontfont2=newF

java - 将文本与 Java Graphics 2d 对齐

谁能告诉我如何在Java2d中正确放置文本?这是代码,它绘制了一列自然左对齐的文本。FontyFont=newFont("Arial",Font.BOLD,13);interval=0;g2d.setFont(yFont);for(Stringl:binLabels){g2d.drawString(l,0,(135+interval));interval=interval+15;}快把我逼疯了。谢谢大家懒惰型 最佳答案 在您的paintComponent()方法中,您可以使用FontMetrics来获取要绘制的字符串的宽度:Font

java - Java BoxLayout中单个字符在Y轴上对齐偏心

在Java中,将某些字符沿y轴对齐到BoxLayout的中心似乎存在问题。我不知道是什么导致了这种情况,我已经创建了一个SSCCE来演示这种效果。在这个例子中,我只使用了字符“a”,并且我在每个JPanel的正中间画了一条线来展示每个案例离中心有多远。粗体文本的情况似乎排列得很好,但正常格式和斜体都严重偏离中心,尽管同时使用了setAlignmentX和setHorizo​​ntalAlignment。感谢任何帮助理解这种影响的帮助。如果我的特定计算机上的Java不知何故出现问题,这是我运行SSCCE时屏幕上显示的图像,它沿y轴加载三个带有BoxLayouts的不同JPanel,并放置

java - 跨面板对齐 Swing 组件

我们有一个包含多个JPanel的JPanel,其中包含JComponents(比方说JLabels和JTextboxes)在每个内部JPanel中,我们使用JGoodiesLayout以确保所有标签的正确对齐。当然,我们希望所有标签在它们所在的子面板上独立对齐。如果不固定包含JLabel的列的宽度,我们如何做到这一点?我们不能松开JPanel,因为我们必须在组件组周围设置边框。 最佳答案 我建议使用平面布局而不是嵌套布局。在单个布局中对齐很容易。避免TitledBorders并用带标题的分隔符、分隔符或只是空白替换它们。这对绝大多数