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
Last revisionBoth sides next 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/06 22:55] 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.txt · Last modified: 2013/07/15 22:59 by mithat

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki