开发者社区> 问答> 正文

SWT 计算器按钮事件监听怎么获取按钮text值

用swt插件做计算器,监听所有按钮。通过按钮text值判断哪个按钮被点击,如"0"按钮被点击,就在text框里加个0.现在问题是怎样在监听函数里得到button的text值。10个数字按钮用一个监听事件来监听的。下面是代码:

  Button button = new Button(shell, SWT.NONE);
    button.setText("2");
    button.setBounds(140, 86, 80, 27);
    button.addSelectionListener(al);
    //按钮定义
SelectionListener al = new SelectionListener() {
    @Override
    public void widgetSelected(SelectionEvent e) {
        // TODO Auto-generated method stub
        //Widget b=e.widget
        text.setText(e.getSource().toString()); 
    }

    @Override
    public void widgetDefaultSelected(SelectionEvent e) {
        // TODO Auto-generated method stub

    }
};//监听事件

在按钮定义的时候可以用getText()方法得到button text值。在监听函数里有getSource()方法,得到的是Button {0}。我想要的只是个0。有什么方法可以得到button text属性(在监听函数里)。
俺是新手,假期学Java,想做个计算器来贯穿Java学习过程。
求指点。
你们怎么学习Java的?
在eclipse里装了swt的例子,还在弄源码。例子像是实验性的东西。有没有swt的例子推荐下。最好有源码。

展开
收起
蛮大人123 2016-03-03 13:08:56 2808 0
1 条回答
写回答
取消 提交回答
  • 我说我不帅他们就打我,还说我虚伪

    定义一个辅助Button用来接收监听事件传来的按钮信息
    private static Button button_temp;
    在监听事件里对button_temp进行赋值,这样button_temp就可以用getText()方法取到Text值了。
    button_temp=(Button) e.widget;
    System.out.println(button_temp.getText());

    2019-07-17 18:51:14
    赞同 展开评论 打赏
问答分类:
问答地址:
问答排行榜
最热
最新

相关电子书

更多
低代码开发师(初级)实战教程 立即下载
冬季实战营第三期:MySQL数据库进阶实战 立即下载
阿里巴巴DevOps 最佳实践手册 立即下载