”工欲善其事,必先利其器。“—孔子《论语.录灵公》
首页 > 编程 > 为什么我的JTEXTAREA使用SwingPropertyChangeSupport修改数组后不会更新?

为什么我的JTEXTAREA使用SwingPropertyChangeSupport修改数组后不会更新?

发布于2025-02-07
浏览:416

Why Does My JTextArea Not Update After Modifying an Array Using SwingPropertyChangeSupport?

SwingPropertyChangeSupport to Dynamically Update JTextArea

SwingPropertyChangeSupport is a class that can be used to monitor changes in the properties of an object.这允许在属性更改时通知其他对象,这对于相应地更新GUI很有用。

在此示例中,我们使用的是swingpropertychangesupport允许在更改时显示在jtextarea中显示的数组通过输入对话框输入。数组的更新确定,但是GUI没有刷新。

这是修改的代码:

arg){ guiforupdate display = new GuiforUpdate(); display.setvisible(true); } } guiforupdate扩展了Jframe实现ActionListener { /** * */ 私有静态最终长序列= 1L; 私人焦点列表焦点列表; 私人字符串mlist; 私人jbutton changearraybutton; 私有JTEXTAREA CODERIN,DISSISOUTUP; 私有int arrayIndex; 私人jpanel displaypanel; 私有Arrayforupdating arrayforupDate = new ArrayForupDating(); public guiforupdate(){ 设定(224,180); layoutleft(); layoutdisplay(); layoutbottom(); } /** *添加了一个数组的显示区域 */ public void layoutdisplay(){ DisplayPanel = new Jpanel(); 添加(displaypanel,borderlayout.center); displayOutput = new jtextarea(); displaypanel.add(displayOutput); DisplayOutput.Addfocuslistener(focusListener); mlist = arrayforupdate.getBoundProperty(); arrayforupdate.addpropertychangelistener(new PropertyChangelistener(){ @Override public void propertyChange(propertyChangeEvent pcevt){ if(pcevt.getPropertyname()。等于( arrayforupdating.bound_property)){ mlist =(pcevt.getNewValue()。toString()); 更新isPlay(); } } }); displayOutput.setText(mlist); } /** *在GUI的左侧添加左侧元素 */ public void layoutleft(){ jpanel left = new jpanel(); 添加(左,borderlayout.west); Codlein = New Jtextarea(2,2); left.add(codlein); codlein.Addfocuslistener(focusListener); } /** *将底部元素添加到GUI的底部 */ public void layoutbottom(){ jpanel bottom = new jpanel(); changearraybutton = new jbutton(“ modify array”); changearraybutton.addactionListener(this); botton.Add(changearraybutton); 添加(底部,borderlayout.south); } /** *过程按钮点击 */ 公共无效的操作表面(ActionEvent AE){ if(ae.getSource()== changearraybutton){ //首先检查是否输入任何代码 if(codein.getText()。trim()。长度()!= 0){ //调用modifyMemory()方法 modifyArray(); } 别的 joptionpane.showmessagedialog(null, “请先输入一些东西。”); } } /** *处理修改数组的方法 */ public void modifyArray(){ //显示以检索输入地址的对话框 字符串地址tomodify =(string)joptionpane .showInputDialog(“在哪个位置?”); //确认是否输入字符串 if((((adverseTomodify!= null) //如果输入十进制地址,请转换为整数 arrayIndex = integer.parseint(adversionTomodify); } //通过整数通过 ProcessInput(arrayIndex); } public void processInput(int a){ 字符串newValue = codein.getText(); arrayforupdate.instructionsin(newValue,a); } public void updatedisplay(){ displayOutput.setText(mlist); } } 类arrayforupdating { 公共静态最终字符串bound_property =“ bound属性”; 私有字符串boundproperty =“”; 私有swingpropertychangesupport spcsupport =新的swingpropertychangesupport( 这); 私人弦乐器mlist; 私人int [] myarray; public arrayforupdating(){ myArray = new Int [5]; for(int i = 0; i
最新教程 更多>
  • HTML格式标签
    HTML格式标签
    HTML 格式化元素 **HTML Formatting is a process of formatting text for better look and feel. HTML provides us ability to format text without us...
    编程 发布于2025-02-07
  • 为什么使用Firefox后退按钮时JavaScript执行停止?
    为什么使用Firefox后退按钮时JavaScript执行停止?
    导航历史记录问题:JavaScript使用Firefox Back Back 此行为是由浏览器缓存JavaScript资源引起的。要解决此问题并确保在后续页面访问中执行脚本,Firefox用户应设置一个空功能以在window.onunload事件上调用。 pre> window.onloa...
    编程 发布于2025-02-07
  • 我可以在CSS中使用SVG作为伪元素吗?
    我可以在CSS中使用SVG作为伪元素吗?
    使用svgs用作pseudo-element content css content properts允许在使用元素之前或之后使用元素插入各种类型的内容伪元素,例如::之前和::之后。但是,对可以包括哪些内容有限制。可以将svgs用作pseudo-element Content?,现在可以使用s...
    编程 发布于2025-02-07
  • 如何可靠地检查MySQL表中的列存在?
    如何可靠地检查MySQL表中的列存在?
    在mySQL中确定列中的列存在,验证表中的列存在与与之相比有点困惑其他数据库系统。常用的方法:如果存在(从信息_schema.columns select * * where table_name ='prefix_topic'和column_name =&...
    编程 发布于2025-02-07
  • 如何为PostgreSQL中的每个唯一标识符有效地检索最后一行?
    如何为PostgreSQL中的每个唯一标识符有效地检索最后一行?
    [2最后一行与数据集中的每个不同标识符关联。考虑以下数据: 1 2014-02-01 kjkj 1 2014-03-11 ajskj 3 2014-02-01 sfdg 3 2014-06-12 fdsa 在(ID)上选择DISTINC 来自the_table 按ID订单,date desc;...
    编程 发布于2025-02-07
  • 如何使用替换指令在GO MOD中解析模块路径差异?
    如何使用替换指令在GO MOD中解析模块路径差异?
    克服go mod中的模块路径差异 coreos/bbolt:github.com/coreos/ [email受保护]:解析go.mod:模块将其路径声明为:go.etcd.io/bbolt `要解决此问题,您可以在go.mod文件中使用替换指令。只需在go.mod的末尾添加以下行:[&& &...
    编程 发布于2025-02-07
  • 如何检查对象是否具有Python中的特定属性?
    如何检查对象是否具有Python中的特定属性?
    方法来确定对象属性存在寻求一种方法来验证对象中特定属性的存在。考虑以下示例,其中尝试访问不确定属性会引起错误: >>> a = someClass() >>> A.property Trackback(最近的最新电话): 文件“ ”,第1行, AttributeError:SomeClass实...
    编程 发布于2025-02-07
  • 大批
    大批
    [2 数组是对象,因此它们在JS中也具有方法。 切片(开始):在新数组中提取部分数组,而无需突变原始数组。 令arr = ['a','b','c','d','e']; // USECASE:提取直到索引作...
    编程 发布于2025-02-07
  • 如何在Java字符串中有效替换多个子字符串?
    如何在Java字符串中有效替换多个子字符串?
    利用正则表达式示例示例usage 接下来,您可以使用匹配器查找令牌的所有出现,并用相应的值替换它们: 一旦汇总正则表达式,搜索输入字符串通常非常快, 。此外,正则表达式还可以灵活地处理复杂的搜索模式,例如涉及括号和量词的模式。
    编程 发布于2025-02-07
  • 为什么PYTZ最初显示出意外的时区偏移?
    为什么PYTZ最初显示出意外的时区偏移?
    与pytz 最初从pytz获得特定的偏移。例如,亚洲/hong_kong最初显示一个七个小时37分钟的偏移: 差异源 考虑以下代码: < pre> import pytz [&& &&&&&&华&& && && && &&&华dt2 = hk.localize(dateTime(2012,1...
    编程 发布于2025-02-07
  • 我可以将加密从McRypt迁移到OpenSSL,并使用OpenSSL迁移MCRYPT加密数据?
    我可以将加密从McRypt迁移到OpenSSL,并使用OpenSSL迁移MCRYPT加密数据?
    将我的加密库从mcrypt升级到openssl 问题:是否可以将我的加密库从McRypt升级到OpenSSL?如果是这样?使用openssl?答案:可以使用mcrypt数据加密数据,可以使用openssl。关于如何使用openssl对McRypt进行加密的数据: openssl_decrypt...
    编程 发布于2025-02-07
  • 哪种方法更有效地用于点 - 填点检测:射线跟踪或matplotlib \的路径contains_points?
    哪种方法更有效地用于点 - 填点检测:射线跟踪或matplotlib \的路径contains_points?
    在Python 射线tracing方法Matplotlib's path.contains_points FunctionMatplotlib's path.contains_points function employs a路径对象表示多边形。它检查给定点是否位于定义路径内。 T...
    编程 发布于2025-02-07
  • 如何在整个HTML文档中设计特定元素类型的第一个实例?
    如何在整个HTML文档中设计特定元素类型的第一个实例?
    [2单独使用CSS,整个HTML文档可能是一个挑战。 the:第一型伪级仅限于与其父元素中类型的第一个元素匹配。 以下CSS将使用添加的类样式的第一个段落: }
    编程 发布于2025-02-07
  • 如何使用PHP从XML文件中有效地检索属性值?
    如何使用PHP从XML文件中有效地检索属性值?
    从php 您的目标可能是检索“ varnum”属性值,其中提取数据的传统方法可能会使您感到困惑。 - > attributes()为$ attributeName => $ attributeValue){ echo $ attributeName,'=“',$ at...
    编程 发布于2025-02-07
  • 如何从Google API中检索最新的jQuery库?
    如何从Google API中检索最新的jQuery库?
    从Google APIS 问题中提供的jQuery URL是版本1.2.6。对于检索最新版本,以前有一种使用特定版本号的替代方法,它是使用以下语法: https://ajax.googleapis.com/ajax/libs/jquery/1/jquery.min.js(google hosted...
    编程 发布于2025-02-07

免责声明: 提供的所有资源部分来自互联网,如果有侵犯您的版权或其他权益,请说明详细缘由并提供版权或权益证明然后发到邮箱:[email protected] 我们会第一时间内为您处理。

Copyright© 2022 湘ICP备2022001581号-3