BlinCT
Мамыр 8, 2016, 1:51 Т.Ж.

Определить, на какой обьект нажали

qml, Qt, нажатие по объекту

Всем привет.
Нужен совет:

Item
{
	CircleTimer
	{
    		id: circletimer1
    		anchors.fill: parent
    		onClicked // Тут какой то метод по перехвату нажатия и проверки
	}
}
 
Item
{
	CircleTimer
	{
    		id: circletimer2
    		anchors.fill: parent
    		onClicked // Тут какой то метод по перехвату нажатия и проверки
	}
}

В данном случае Item и в нем располагается какой-то объект класса CircleTimer, по клику он запускает время. Но у нас 2 объекта одного типа. И требуется как-то проверить по какому из них нажали чтобы выполнять какие то действия. Не проблема ли в том, что они оба одного и того же класса?

0

Ол саған ұнайды ма? Әлеуметтік желілерде бөлісіңіз!

1
Evgenii Legotckoi
  • Мамыр 8, 2016, 3:46 Т.Қ.
  • Жауап шешім ретінде белгіленді.

Вообще никакой проблемы нет в том, что объекты одного класса. Id же у них разные заданы.
У объекта есть метод клика. В нём и передаём Id таймера, по которому кликнули.

Item
{
	CircleTimer
	{
    		id: circletimer1
    		anchors.fill: parent
    		onClicked: {
                    // do something with circletimer1. For example
                    if (circletimer1.isRunning()) {
                        circletimer1.stop();
                    } else {
                        circletimer1.start();
                    }
                }
	}
}
 
Item
{
	CircleTimer
	{
    		id: circletimer2
    		anchors.fill: parent
    		onClicked: {
                    // do something with circletimer2
                }
	}
}

 

    Пікірлер

    Тек рұқсаты бар пайдаланушылар ғана пікір қалдыра алады.
    Кіріңіз немесе Тіркеліңіз