请我希望看到这个后不要伤害你的眼睛......很抱歉.. 我想得到上面提到的文本。
我想从黄色突出显示的框中获取文本。
我设计了我的程序,我需要得到一些像上面这样的东西。我使用 getComponentCount() 来检查有多少个标签。它显示正确,然后我使用 getComponent(int n) ,n = 0,并且我正在寻找 getText().. 但没有。
永远谢谢你。
最佳答案
你的设计没问题。
getComponent() 返回一个组件而不是标签。
您只需将其专门转换为标签即可:
String text = null;
Component c = panel.getComponent(i);
if (c instanceof Label)
text = ((Label)c).getText();
MVC 方法:
更面向对象的解决方案是将模型(数据)与 View (绘图)分开。
您可以创建一个新的模型类,比方说“DrawingModel”。
然后为模型中的每个属性提供 get()/set()
。
然后,您可以通过 drawingView.setModel(drawingModel)
连接两者。
当您需要任何数据组件时,您可以从 DrawingModel 类访问或设置它,而不是直接从 View 访问或设置它。
实际“驱动”应用程序的组件称为 Controller 。
该方法是一种称为模型- View - Controller (简称 MVC)的架构模式。
您可以了解更多here和 here 。
关于java - 如何获取两层组件中的文本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34191967/