Tableview 行应该在 QML 中按下时更改
Tableview row should change on pressed in QML
我的代表是表格视图中的图像,如何更改所选行的图像
onPressed 和 onReleased 它应该回到原来的状态。
itemDelegate: Image
{
id:item_id
height: (tableView.height/(listmodel.count < 4 ? listmodel.count : 4))
source:
{
var activeRow = tableView.currentRow === styleData.row
(activeRow ? Image 1 : styleData.row % 2 ? (image 2): (image 3))
}
MouseArea
{
id:table_mouse_id
anchors.fill: parent
onPressed:
{
source = image 4
}
onReleased:
{
tableView.currentRow = styleData.row
}
}
您可以使用 pressed
属性 的 MouseArea
:
source: {
var activeRow = tableView.currentRow === styleData.row;
(activeRow ? table_mouse_id.pressed ? image4 //pressed
: Image1 //active
: styleData.row % 2 ? (image2) //odd
: (image3)) //even
}
重要说明:您应该删除 onPressed
处理程序,因为这将覆盖绑定(这可能也是它在您当前设置中不起作用的原因)
我的代表是表格视图中的图像,如何更改所选行的图像 onPressed 和 onReleased 它应该回到原来的状态。
itemDelegate: Image
{
id:item_id
height: (tableView.height/(listmodel.count < 4 ? listmodel.count : 4))
source:
{
var activeRow = tableView.currentRow === styleData.row
(activeRow ? Image 1 : styleData.row % 2 ? (image 2): (image 3))
}
MouseArea
{
id:table_mouse_id
anchors.fill: parent
onPressed:
{
source = image 4
}
onReleased:
{
tableView.currentRow = styleData.row
}
}
您可以使用 pressed
属性 的 MouseArea
:
source: {
var activeRow = tableView.currentRow === styleData.row;
(activeRow ? table_mouse_id.pressed ? image4 //pressed
: Image1 //active
: styleData.row % 2 ? (image2) //odd
: (image3)) //even
}
重要说明:您应该删除 onPressed
处理程序,因为这将覆盖绑定(这可能也是它在您当前设置中不起作用的原因)