Russian Qt Forum
Май 08, 2024, 05:07 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
 
  Начало Форум WIKI (Вики)FAQ Помощь Поиск Войти Регистрация  
  Просмотр сообщений
Страниц: [1] 2 3 4
1  Qt / Пользовательский интерфейс (GUI) / Re: Использование QMessageBox : Сентябрь 25, 2023, 13:45
setProperty - это то, что нужно. Спасибо.
2  Qt / Пользовательский интерфейс (GUI) / Использование QMessageBox : Сентябрь 25, 2023, 11:42
Добавляю нестандартные кнопки в QMessageBox с помощью вызова addButton(QString, QMessageBox::ButtonRole).
Для того, чтобы узнать, какая кнопка была нажата, рекомендуется сохранять указатель на добавленную кнопку и сравнивать его со значением clickedButton().
Но! У меня кнопки добавляются в одном методе, а форма вызывается в другом, сохранять указатели я не хочу.
Есть ли другой способ узнать, какая кнопка была нажата?

3  Qt / Установка, сборка, отладка, тестирование / qInfo() в режиме отладки : Май 29, 2023, 10:36
Здравствуйте.

Столкнулась с проблемой: при запуске в режиме отладки (Qt Creator 7.0.1, отладчик GDB, Qt 5.7.1 для QNX) вывод qInfo() происходит в одну и ту же строку, т.е. каждая новая строка затирает предыдущую. При запуске без отладчика всё нормально, строки выводятся одна за другой.
4  Qt / Общие вопросы / Re: Регулярные выражения : Август 16, 2022, 15:13
Цитировать
- использовать регулярку HOME=.*
Спасибо, это сработало.
5  Qt / Общие вопросы / Регулярные выражения : Август 16, 2022, 14:08
Здравствуйте

Есть код:
Код:
	QProcess proc;
QStringList env = proc.systemEnvironment();
qDebug() << env;
qDebug() << env.indexOf(QRegExp("HOME=*"));


Результат работы кода:
Цитировать
+9.215: DBG: ("QT_QPA_PLATFORM=photon:no_offscreen", "_=/tmp/poSKP/bin/poSKP", "LD_LIBRARY_PATH=:/opt/qt571/x86/lib:/opt/mesa3d/x86/lib:/opt/gcc/lib", "SSH_CONNECTION=192.168.180.1 57359 192.168.180.136 22", "PATH=/sbin:/usr/sbin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/opt/bin:/opt/sbin:/usr/qnx650/host/qnx6/x86/usr/bin:/usr/qnx650/host/qnx6/x86/usr/sbin:/usr/qnx650/host/qnx6/x86/sbin:/usr/qnx650/host/qnx6/x86/bin:/usr/qnx650/host/qnx6/x86/usr/photon/appbuilder", "SHELL=/bin/sh", "MAKEFLAGS=-I/usr/qnx650/target/qnx6/usr/include", "QNX_HELP_HOME_PAGE=/usr/qnx650/target/qnx6/usr/help/product/momentics/bookset.html", "HOSTNAME=modelBM", "USER=root", "TMPDIR=/tmp", "MAIL=/var/spool/mail/root", "PROCESSOR=x86", "HOME=/root", "SSH_CLIENT=192.168.180.1 57359 22", "QNX_HOST=/usr/qnx650/host/qnx6/x86", "QNX_TARGET=/usr/qnx650/target/qnx6", "QNX_HELP_PATH=/usr/qnx650/target/qnx6/usr/help/product", "QNX_CONFIGURATION=/etc/qnx", "LOGNAME=root", "SYSNAME=nto", "PHOTON=/dev/photon")
+9.216: DBG: -1

Почему не нашлась строка "HOME=/root" (присутствует в выводе)?

OC QNX 6.5.0, Qt 5.7.1
6  Qt / Пользовательский интерфейс (GUI) / Изменить ширину QScrollBar : Ноябрь 09, 2020, 17:41
Как изменить ширину встроенного скроллбара в QPlainTextEdit (например)?

Я делаю так:
Код:
     ui->plainTextEdit->verticalScrollBar()->setFixedWidth(30);
     ui->plainTextEdit->horizontalScrollBar()->setFixedHeight(30);

Ширина изменяется (это видно по стрелкам), но скроллбар при этом обрезается по внешнему краю до исходной ширины, в результате ширина остаётся прежней. Как сделать, чтобы не обрезался?
7  Qt / Пользовательский интерфейс (GUI) / Re: Непонятное удаление cell widget : Январь 17, 2020, 11:35
GreatSnake, назад не отобрать уже никак?
8  Qt / Пользовательский интерфейс (GUI) / Непонятное удаление cell widget : Январь 17, 2020, 09:31
Добрый день.

Есть QTableWidget* pMyWidget и QComboBox* pMybox.

Делаю 
Код:
pMyWidget->setCellWidget(row, col, pMyBox);

Затем, в другом месте:

Код:
pMyWidget->setCellWidget(row, col, NULL);
pMyWidget->removeRow(row);

Проблема в том, что объект pMybox удаляется вместе со строкой, и я больше не могу его использовать, а мне надо, чтобы он остался. Почему это происходит, непонятно, т.к. вывод перед удалением строки
pMyWidget->cellWidget(row, col) выдаёт 0х0.

9  Qt / Пользовательский интерфейс (GUI) / Re: Цвет выделения QListWidgetItem-а : Ноябрь 23, 2019, 11:14
Иволга Но если использовать QListView, то метод модели data может выдавать что угодно, в том числе и цвет фона, в зависимости от выделенности, содержания и даже от времени суток Улыбающийся
Можете пример привести? Я в теме  "модель/представление" не очень разбираюсь...
10  Qt / Пользовательский интерфейс (GUI) / Re: Цвет выделения QListWidgetItem-а : Ноябрь 23, 2019, 10:47
Я это делал через qss
Код:
QListView {
    color: rgb(127, 0, 63);
    background-color: rgb(255, 255, 241);
    selection-color: white;
    selection-background-color: rgb(191, 31, 0);
}
А где здесь два или больше цвета для выделения? Я вижу только один для текста и один для фона.
11  Qt / Пользовательский интерфейс (GUI) / Re: Цвет выделения QListWidgetItem-а : Ноябрь 22, 2019, 13:00
Немного переделала, т.к. предыдущий вариант искажает форматирование текстового содержимого item-a.
Код:
	
void paint(QPainter *painter, const QStyleOptionViewItem &option, const QModelIndex &index) const
{
QStyleOptionViewItem myOpt(option);

if (option.state & QStyle::State_Selected)
{
QPalette pal(myOpt.palette);
        QVariant var = index.model()->data(index, Qt::UserRole);

        pal.setColor(QPalette::Highlight,var.value<QColor>());
        myOpt.palette = pal;
}
QStyledItemDelegate::paint(painter, myOpt, index);
}
12  Qt / Пользовательский интерфейс (GUI) / Re: Цвет выделения QListWidgetItem-а : Ноябрь 22, 2019, 10:05
Нашла такое решение

Код:
class Delegate : public QStyledItemDelegate
{
Q_OBJECT
public:
Delegate(){}
void paint(QPainter *painter, const QStyleOptionViewItem &option, const QModelIndex &index) const
{
if (option.state & QStyle::State_Selected)
{
                QVariant var = index.model()->data(index, Qt::UserRole);
                painter->setPen(QColor(Qt::white));  // это не обязательно
                painter->fillRect(option.rect, var.value<QColor>());
painter->drawText(option.rect, index.model()->data(index, Qt::DisplayRole).toString());
}
else
QStyledItemDelegate::paint(painter, option, index);
}
};

В конструкторе формы:
Код:
ui.listWidget->setItemDelegate(new Delegate());

Где-то внутри программы:
Код:
QColor color = getMyData() ? QColor(Qt::darkGreen) : QColor(Qt::darkBlue);
myItem->setData(Qt::UserRole, color);

13  Qt / Пользовательский интерфейс (GUI) / Цвет выделения QListWidgetItem-а : Ноябрь 21, 2019, 11:04
Добрый день.

Как для QListWidgetItem-а определять/переопределять цвет, которым он будет выделяться (Highligt) в QListWidget-e?
Необходимо использовать два определённых цвета, которые будут назначаться QListWidgetItem-у в зависимости от поступивших данных.
14  Qt / Пользовательский интерфейс (GUI) / QFileSystemModel из 2-папок : Ноябрь 16, 2018, 10:00
Добрый день! Мне нужно, чтобы в QTreeView отображалось содержимое только 2-х конкретных папок, а остальные видно не было. Как это сделать? Папки лежат в разных местах.
15  Qt / Общие вопросы / Re: Перехват stdout : Май 05, 2017, 08:46
Всем спасибо Смеющийся, простого и понятного способа вроде QProcess::readAllStandardOutput(), на какой я надеялась, похоже нету, заморачиваться со сложными неохота, поэтому буду переделывать классы.
Цитировать
Автор, похоже, так и не нашел туляка-кутешника))
Даже если бы нашёл, вряд ли бы он помог мне. Я работаю с Qt 10 лет уже (начинала ещё в 3-й версии), поэтому простых вопросов здесь не задаю.  Подмигивающий
Цитировать
поэтому накину свои 5 копеек: "свой stdout" вы как делаете?
Через printf и cout, классы пришли из не Qt-шного проекта, и должна сохраниться возможность использовать их без графики. Поэтому добавлю emit logMessage(QString);
Возможности 5-й версии мне недоступны, т.к. пишу в 4.8.6, таково требование заказчика.
Страниц: [1] 2 3 4

Страница сгенерирована за 0.087 секунд. Запросов: 23.