User Tools

Site Tools


qt-quick-for-designers-1:all_about_lists

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
qt-quick-for-designers-1:all_about_lists [2013/07/05 05:33] – created mithatqt-quick-for-designers-1:all_about_lists [2013/07/15 22:59] (current) mithat
Line 2: Line 2:
  
 <WRAP center round important 60%> <WRAP center round important 60%>
-The following text is taken verbatim from the source slides((See [[qt-quick-for-designers-1:start|Qt Quick for Designers]])) including errors in the code examples.+The following text is taken verbatim from the source slides((See [[qt-quick-for-designers-1:start|Qt Quick for Designers]])) including any errors in the code examples.
 </WRAP> </WRAP>
  
Line 17: Line 17:
   * Models in QtQuick   * Models in QtQuick
     * This is how a list item is organized in a QtQuick model. The ListModel element is an array of ListElements     * This is how a list item is organized in a QtQuick model. The ListModel element is an array of ListElements
 +      * See example: addon/module-003/examples/ListModelExample.qml
 <code javascript> <code javascript>
 ListModel { ListModel {
Line 28: Line 29:
   }   }
 }</code> }</code>
-    * See example: addon/module-003/examples/ListModelExample.qml 
-  
  
  
 +===== ListView =====
 +  * To start creating lists in QtQuick, you must organize your files first.
 +  * You need, at least, three files
 +    * Single item view
 +      * All the visual elements from each list item and how they appear are in this file
 +    * ListModel
 +      * This is the file presented before, an array of ListElements containing all information from each item
 +    * Main file
 +      * This file will contain the ListView call, the ListModel and the Component for each single item view that will be repeated
  
 +  * The first thing to do is to create the list item layout file ...
 +    * See example: addon/module-003/examples/ItemRenderDelegate.qml
 +<code javascript>
 +...
 +Text {
 +  id: nameTxt
 +  font.family: "Univers LT Std"
 +  color: "#c8c8c8"
 +  font.pixelSize: 22
 +  text: "<b>Adriel</b> Nunes Teles"
 +  anchors.left: icon.right
 +  anchors.top: icon.top
 +  anchors.topMargin: 8
 +}
 +...</code>
  
 +  * ... then you need to make the item flexible enough to accept the variables you need
 +    * See example: addon/module-003/examples/ListItemDelegate.qml
 +<code javascript>
 +...
 +property string intern_name
 +property string intern_surname
 +property string intern_telephone
 +...
 +}
 +Text {
 +  id: nameTxt
 +  font.family: "Univers LT Std"
 +  color: "#c8c8c8"
 +  font.pixelSize: 22
 +  text: "<b>"+ intern_name + "</b> " + intern_surname
 +  anchors.left: icon.right
 +  anchors.top: icon.top
 +  anchors.topMargin: 8
 +}
 +...</code>
  
-===== ListView =====+  * Once you’ve done all of this, now you just need to set the ListView inside the main file 
 +    * See example: addon/module-003/examples/ListExample.qml 
 +<code javascript> 
 +ListView { 
 +  id: listExample 
 +  orientation: "Vertical" 
 +  model: ListModelExample {} 
 +  delegate: itemComponent 
 +
 +Component { 
 +  id: itemComponent 
 +  ListItemExample { 
 +    intern_name: model.name 
 +    intern_surname: model.surname 
 +    intern_telephone: model.telephone 
 +    intern_icon: model.icon 
 +  } 
 +
 +...</code> 
 + 
 +  * See example: addon/module-003/examples/ListExample.qml 
 +{{youtube>LXnDpF2tYkI?medium}}
  
 ===== GridView ===== ===== GridView =====
Line 43: Line 107:
 ===== Animating list items ===== ===== Animating list items =====
  
 +--------------------------------------------------------------------- 
 +===== Resources ===== 
 +  * All source code is subject to this [[copyright header|copyright]].
  
  
  
qt-quick-for-designers-1/all_about_lists.1373002436.txt.gz · Last modified: 2013/07/05 05:33 by mithat

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki