使用单击事件添加动态按钮

时间:2013-08-16 05:22:34

标签: qml blackberry-10 blackberry-cascades

我正在以编程方式实现“多个添加”按钮。我成功添加按钮,但我无法获得所有按钮的点击事件。我总是点击最后添加的按钮。

我想为所有按钮单独点击事件。

我正在使用此代码添加按钮。

ComponentDefinition {
            id: mComponentDefinitionSubmitButton
            Button {
                id: mButtonID
                horizontalAlignment: HorizontalAlignment.Center
                onClicked: {
                    //My Click code. Always detect last button.
                }
            }
        }

var mButton = mComponentDefinitionSubmitButton.createObject();
mButton.text = qsTr(title)
mContainerButton.add(mButton)

1 个答案:

答案 0 :(得分:3)

我完成了信号..

function checkClick(button)
    {
        console.debug("click..."+ button);
    }
    attachedObjects: [
        ComponentDefinition {
            id: mComponentDefinitionSubmitButton

            Button {
                id: mButtonID
                signal click(variant text);
                horizontalAlignment: HorizontalAlignment.Center
                onClicked: {
                    click(mButtonID.text);
                }
            }
        }
    ]

----------------------------------------------------------------
var mButton = mComponentDefinitionSubmitButton.createObject();
mButton.text = qsTr("Button");
mButton.click.connect(checkClick);
btnContainer.add(mButton);