[Interest] QML id
Gian Maxera
gmaxera at gmail.com
Mon Apr 11 14:10:06 CEST 2016
> On 11 Apr 2016, at 11:44, Igor Mironchik <igor.mironchik at gmail.com> wrote:
>
> Hello,
>
> On 11.04.2016 13:19, Gian Maxera wrote:
>>
>>> On 11 Apr 2016, at 11:14, Igor Mironchik < <mailto:igor.mironchik at gmail.com>igor.mironchik at gmail.com <mailto:igor.mironchik at gmail.com>> wrote:
>>>
>>>
>>>
>>> On 11.04.2016 12:57, Gian Maxera wrote:
>>>> If the Text is inside the generated rectangle into the repeater you don’t need to generate different Ids, you can do that:
>>>>
>>>> Repeater {
>>>> model: 10
>>>> delegate: Rectangle {
>>>> id: cellRect
>>>> Text {
>>>> anchor.horizontalCenter: cellRect.horizontalCenter
>>>> }
>>>> }
>>>> }
>>>>
>>>> Even if the delegate has a fixed id and generated 10 times, QML will resolve correctly it.
>>>
>>> I want to rewrite my QML with chess board with Repeater. And I want to see the next:
>>>
>>> <chess.png>
>>
>> I don’t know your current code, but If I would in your shoes, I will use a model representing where to put the chess items and a Grid to lay out the items. With Grid Item you can setup a global alignment of the items.
>> I think it should work in your case.
>> If you want more help, please share with us some snippet of code so I can understand what you need to achieve.
>
> Model and Grid is fine. I can place chess and rects, fine. But how to put letters and numbers?
One solution using Column and Row instead of Grid to split Repeaters:
Column {
spacing: 0
Row {
// top letters
EmptyItem { // use fixed width here so you can align the text }
Repeater {
model: [“A”, “B”, … “H”]
delegate: DisplayTheLetter { … }
}
EmpyItem { }
}
// Rows with cells
Repeater {
model: 8
delegate: Row {
// number
Text {
// use fixed width and align left the text
// vertical alignment with anchors
anchors.verticalCenter: parent.verticalCenter
text: index+1
}
// first row of chess board
Repeater {
model: chessBoardModel[index]
delegate: ASingleCellOfChessBoard { … }
}
}
}
Row {
// bottom letters
EmptyItem { }
Repeater {
model: [“A”, “B”, … “H”]
delegate: DisplayTheLetter { … }
}
EmpyItem { }
}
}
>
> Thank you.
>
>>
>>>>
>>>> Ciao,
>>>> Gianluca.
>>>>
>>>> }
>>>>
>>>>> On 11 Apr 2016, at 10:49, Igor Mironchik <igor.mironchik at gmail.com <mailto:igor.mironchik at gmail.com>> wrote:
>>>>>
>>>>> Look. I want to generate chess board - rectangles (8x8). And I want to place numbers an letters on the sides. This numbers and letters should be anchored to centers of rectangles. I.e. I want to have something like:
>>>>>
>>>>> Text {
>>>>> anchor.horizontalCenter: cell00.horizontalCenter
>>>>> }
>>>>>
>>>>> ...
>>>>>
>>>>> On 11.04.2016 12:40, Gian Maxera wrote:
>>>>>> Hello,
>>>>>> I don’t think so.
>>>>>> Why do you need it ? Maybe we can suggest to you an alternative solution.
>>>>>>
>>>>>> Ciao,
>>>>>> Gianluca.
>>>>>>
>>>>>>
>>>>>>> On 11 Apr 2016, at 10:38, Igor Mironchik < <mailto:igor.mironchik at gmail.com>igor.mironchik at gmail.com <mailto:igor.mironchik at gmail.com>> wrote:
>>>>>>>
>>>>>>> Hello,
>>>>>>>
>>>>>>> Is it possible to generate id of item in Repeater, for example?
>>>>>>>
>>>>>>> Thank you.
>>>>>>> _______________________________________________
>>>>>>> Interest mailing list
>>>>>>> Interest at qt-project.org <mailto:Interest at qt-project.org>
>>>>>>> http://lists.qt-project.org/mailman/listinfo/interest <http://lists.qt-project.org/mailman/listinfo/interest>
>>>>>
>>>>
>>>
>>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.qt-project.org/pipermail/interest/attachments/20160411/6fa5d4fd/attachment.html>
More information about the Interest
mailing list