Qt designer - динамически генерировать пользовательский интерфейс / генерировать уникальные имена?

Я недавно начал изучать Qt и столкнулся со следующей проблемой:


Я хочу создать что-то вроде шахматной доски (пусто, пока ничего не нужно делать) - я нарисовал простой интерфейс, но в середине мне нужно сделать шахматную доску самому (скажем, она будет сделана из маленький QTextBrowser s).

Проблема в том, что размер шахматной доски должен быть указан пользователем. Итак, нарисовать 16 полей и присвоить им уникальные objectNames легко, но я понятия не имею, как:

  1. генерировать эти поля "динамически"
  2. генерировать уникальные имена для них, поэтому я буду иметь возможность ссылаться на них позже в коде, например. поле_1_1, поле_1_2, поле_1_3

Заранее

1 ответ

Решение

Так что я думаю, что вы хотите, это двумерный массив полей. Таким образом, вы можете ссылаться на правильное поле, не зная имени.

В частности, Qt предоставляет QLayoutGrid, который, хотя и не является двумерным массивом, предоставит вам сеточный доступ к виджетам с помощью itemAtPosition метод

Другие вопросы по тегам