当前位置: 首页 > 面试题库 >

为什么我不能验证JComponent?

农飞翔
2023-03-14
问题内容

从JavaDoc:

public void validate()

验证此容器及其所有子组件。验证容器意味着布置其子组件。

那就是我想做的。使用尽可能轻巧的组件。但是当我这样做时,对JComponent的调用validate()不会使组件“有效”。

    JComponent c = new JComponent() {};
    System.out.println(c.isValid()); // false
    c.validate();
    System.out.println(c.isValid()); // false

为什么我不能做一个JComponent有效的?


问题答案:

在文档中isValid()说:

当组件在其父容器中的大小和位置正确且其所有子组件也均有效时,该组件才有效。

这种情况,直到你达到顶级容器(JFrameJInternalFrameJApplet)。在您所遇到的问题的示例中,您JComponent没有父母,所以它永远不会有效。



 类似资料:
  • 我想验证只有当另外两个输入为空时才需要输入。所以我使用required_without_all验证规则。 根据Laravel 5.4文件要求,无需所有: 只有当所有其他指定字段都不存在时,验证中的字段才必须存在且不为空。 然而,我认为我不知道现在是什么意思,因为我认为这意味着输入必须被填充。 当我在用户名为空的情况下运行测试时,无论firstname和lastname输入是否为空,它都会返回以下错

  • 问题内容: 如果html文件是本地文件(在我的C驱动器上),则可以使用,但是如果html文件在服务器上并且图像文件是本地文件,则无法使用。这是为什么? 任何可能的解决方法? 问题答案: 如果客户端可以请求本地文件系统文件,然后使用JavaScript找出其中的内容,则将是一个安全漏洞。 解决此问题的唯一方法是在浏览器中构建扩展。Firefox扩展和IE扩展可以访问本地资源。Chrome的限制更为严

  • null null 我在/s/chart/img/purple.png中有一个img,我想在“ChartContainer3”中创建,但我不明白当我单击submit时没有发生任何事情,没有创建。那么我如何在“ChartContainer3”中进行创建呢?

  • 我有一个域名注册在AWS Route53与ACM证书。我现在试图将域名和证书都转移到一个新的帐户,以及用Terraform管理资源。我使用AWS CLI将域名移动到新的帐户,它似乎工作得很好。然后,我尝试运行这个Terraform代码为域创建一个新的证书和宿主区域。 这有两件事很奇怪。首先,创建了证书,但验证从未完成。它仍处于待定验证状态。我在失败后的某个地方读到,您不能自动验证,您需要手动创建C

  • 一个示例用例: 错误:无法取消应用scalaz的类型验证为类型为的类型构造函数,该类型构造函数由类型类 的实例造成的 我可以为自己做一个,比如: 但是为什么还没有呢?毕竟,已经定义了方法。 此外,我不能有和在一起了(这花了我很长时间才弄清楚...),因为另一个复杂的错误... 模糊的隐式值:类似于(我的实例)和trait中的方法...两者都匹配一些... 我应该修改scaraz的源代码吗?或者我完

  • 问题内容: 我有一个div,在该div内,我有一个无序列表。我已将其应用于无序列表,但不会在标头div中居中。 有人可以告诉我为什么吗?我认为,如果我定义父div的宽度,那么无序列表应该能够以居中。我想念什么? 这是我的代码: 问题答案: 您需要定义要居中的元素的宽度,而不是父元素。 编辑 :好的,我现在已经看到了测试页,这就是我认为您想要的: