java按钮国际化后不能改变名字的问题

最近在用java开发项目,项目有个需求是要求能够界面中英切换,也就是java的国际化问题。

国际化之前我都是用中文字体来完成整个项目的,直至项目的功能都实现后才将其进行国际化,也就是添加英文显示。

在进行国际化的过程中,出现了一个问题,就是对java按钮的名字进行更改失败的问题。在项目开发之前,我一直用中文先进行开发,有一些按钮,在被用户触发之后会改变名字,比如说一个button,在被按下之前,显示的是打开,在按下之后则显示“关闭”,在进行国际化后,这种功能消失了,也就是说button通过setText(" ")去改变其名字的效果会失效。寻找了原因后,发现是中英切换所带来的问题,一旦把button加入到国际化的函数进去后,button上面所能显示的只是在两个切换表里面所输入的信息,人为的在其它地方对按钮进行更改将会无任何的效果。只能是这个按钮的中文“打开”状态和英文的“open”,而切换后的“关闭”和“close”均无法显示。

 

遇到这种问题时,可以通过定义一个全局的变量来对所选择的语言进行监听,分别赋值给0或1,不用把button加在国际化的列表里面,而是额外的用一个函数去实现它,写一个方法,用0和1来判断其是中文还是英文,以此来改变或是添加button里面的内容。修改时也不可放在国际化的函数里面进行修改,而是再另外的写一个方法。这样就可以实现中英切换按钮,并且将按钮被按下时的名字改变掉。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值