如何从黑莓10级联中的复选框选定项目中获取值..?

Posted

技术标签:

【中文标题】如何从黑莓10级联中的复选框选定项目中获取值..?【英文标题】:How to get values from check box selected item in blackberry 10 cascades..? 【发布时间】:2012-12-26 17:07:37 【问题描述】:

我有一个带有复选框的列表视图。我想在列表视图中获取所选项目的值。我怎样才能实现上述..?

我已经发布了下面的截图:

这是我尝试过的:

// 列表视图声明及其元素:

ListView 
                verticalAlignment: VerticalAlignment.Center
                horizontalAlignment: HorizontalAlignment.Center
                layout: FlowListLayout 
                
                dataModel: grouplistdatamodel
                listItemComponents: [

                    ListItemComponent 
                        type: "item"
                        Container 
                            Container 
                                layout: StackLayout 
                                    orientation: LayoutOrientation.TopToBottom
                                
                                verticalAlignment: VerticalAlignment.Center
                                horizontalAlignment: HorizontalAlignment.Center
                                preferredWidth: 768
                                Container 
                                    verticalAlignment: VerticalAlignment.Center
                                    layout: StackLayout 
                                        orientation: LayoutOrientation.LeftToRight
                                    
                                    CheckBox 
                                        verticalAlignment: VerticalAlignment.Center
                                    id:checkboxvalues
                                  text: ListItemData.firstname
                                   onCheckedChanged: 

                                   


                                    

                                
                            
                            Divider 
                                horizontalAlignment: HorizontalAlignment.Fill
                            
                        
                    
                ]
                onTriggered: 
                _test.showToast(userid);
                
                onCreationCompleted: 
                    group_DataSource.load();
                
            

请帮我解决这个问题。提前谢谢..!

【问题讨论】:

我认为你可以从数据模型本身得到它;这个想法,当用户选中复选框时,您还会更新数据模型值(即项目数据模型应该具有复选框的可变状态);所以最后,您总是可以从代表它的数据模型中获取复选框值和状态 你能不能寄一些样品来做这个 【参考方案1】:

我不确定您到底想做什么,但这里是我将如何存储用户检查的所有数据的方式。

开启onCheckedChanged

ListView 
    ...
    listItemComponents: [
        ...
        onCheckedChanged: 
            ListItem.view.checkedDataChanged(ListItemData.firstname, checked);
        
        ...
    ]
    function checkedDataChanged(data, isChecked) 
        controller.checkedDataChanged(data, isChecked);
    

...

其中checkedDataChanged 是在列表控制器的C++ 类中定义的Q_INVOKABLE

然后您可以管理您在QList 中轻松选择的数据。

希望这会有所帮助!

【讨论】:

以上是关于如何从黑莓10级联中的复选框选定项目中获取值..?的主要内容,如果未能解决你的问题,请参考以下文章

从黑莓中动态生成的 basicEditField 获取价值

黑莓级联中的json数组listview

登录网站时如何从黑莓获取 GPS 坐标

如何从黑莓的无头应用程序打开浏览器

如何从复选框列表中获取最新的选定值?

如何在 Blackberry 10 级联中为 ListView 加载 GroupDataModel 中的源数据?