首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >BlackBerry 10开发交换机案例

BlackBerry 10开发交换机案例
EN

Stack Overflow用户
提问于 2013-08-20 20:47:37
回答 3查看 168关注 0票数 0

我正在开发BlackBerry 10中的一个计算器应用程序,为此,我使用switch case来获取按钮ID,但我不知道如何在switch case中获取按钮ID。

例如:

代码语言:javascript
复制
switch(?){                                    
     case button_addition:

     case button_minus:  

     case button_multiplication:

     case button_division:                                     
}

其中,button_additionbutton_minusbutton_multiplicationbutton_division是按钮的ID。

如何获取这些按钮的ID?

EN

回答 3

Stack Overflow用户

发布于 2013-08-20 22:13:49

我不确定你是否可以得到这样的ID,我可以建议你在按钮中定义自定义属性,并在按钮单击事件上传递该属性。然后,您可以使用该属性来标识事件。

像下面这样

代码语言:javascript
复制
Button{
    id: button_Addidtion
    property var customId: 1 // for addition
    onClick:{
         handleOperation(customId);
    }
}

function handleOperation(id) {
    switch(id) {
        case 1://addition
        break;
    }
}

如果你不想定义自定义属性,那么也许你可以使用objectName属性来标识按钮,我不确定你是否可以在JS中使用带有开关的字符串。

票数 1
EN

Stack Overflow用户

发布于 2013-08-20 21:24:49

我建议你去看看装按钮的容器。在许多窗口系统中,容器都有一个"for each“方法,在该方法中,您可以提供一个在每个按钮上操作的函数。

或者当按钮被按下(或单击)时,检查消息。许多窗口消息都包含发送该消息的小部件的ID。

票数 0
EN

Stack Overflow用户

发布于 2013-08-29 02:11:43

在QML中很简单,您可以创建一个JS函数,该函数将单击的按钮ID作为输入参数,并根据该参数进行切换。您需要调用此JS函数,并在按钮单击信号上传递按钮ID。

代码语言:javascript
复制
function handleMultiButton(buttonID) {
    switch(buttonID) {
        case "button_Addidtion": //Do Something
        break; 
        case "button_division":  //Do Something
        break;
    }
 }

Button{
    id: button_Addidtion
    onClick:{
        handleMultiButton("button_Addidtion");
    }
} 

Button{
     id: button_division
     onClick:{
        handleMultiButton("button_division");
     }
}

等。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/18335471

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档