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

Войти
 
  Начало Форум WIKI (Вики)FAQ Помощь Поиск Войти Регистрация  
  Просмотр сообщений
Страниц: 1 2 [3] 4 5 ... 12
31  Qt / Дополнительные компоненты / Закрытие QSerialPort при удалении физического COM из Windows : Сентябрь 09, 2019, 17:29
Здравствуйте
Можете подсказать, правильно закрывать QSerialPort при физическом отключении COM или нет?
В моем случае это так: есть COM, который появляется при подключении USB-устройства; его открываю, работаю, а потом устройство могут неожиданно выдернуть. Если не вызывать close(), то порт считается после этого открытым.
В принципе, можно вызвать close() и все работает, но при взгляде на алгоритм программы возникает вопрос: "Зачем закрывать порт, который отвалился?"
32  Qt / ActiveX / Re: Создание книги excel : Август 09, 2019, 11:05
Скорее это http://www.forum.crossplatform.ru/index.php?showtopic=10672
33  Программирование / Общий / Re: Блок-схема таймера, прерываемого по нажатию кнопки : Июль 31, 2019, 09:56
Большое спасибо!
34  Программирование / Общий / Re: Блок-схема таймера, прерываемого по нажатию кнопки : Июль 30, 2019, 13:12
А можете немного подробнее про монтирование "дел с таймером". Во вложении я нарисовал схему событийного цикла, хотя не уверен, что она правильная. Если скажете, что в ней не так - буду благодарен. По существу, если кнопка не нажата, то ничего не происходит, таймер не сбрасывается
35  Программирование / Общий / Re: Блок-схема таймера, прерываемого по нажатию кнопки : Июль 30, 2019, 11:36
Пробую так, но непонятно как учесть, что после срабатывания таймера должны выполняться другие действия
36  Программирование / Общий / Блок-схема таймера, прерываемого по нажатию кнопки : Июль 30, 2019, 11:07
Здравствуйте,
Мне надо нарисовать блок-схему алгоритма. Взводится таймер, ожидание несколько секунд, если во время ожидания была нажата кнопка, то выход из программы, если время ожидания вышло, то выполнить другие действия.
Можете высказать мнение, как бы вы нарисовали блок-схему этого алгоритма?
37  Qt / Пользовательский интерфейс (GUI) / Re: QTableWidget в QDialog без появления слайдеров : Июль 29, 2019, 16:03
Возможно, строк будет много и слайдер будет нужен, чтобы все строки уместились в окне
38  Qt / Пользовательский интерфейс (GUI) / Re: QTableWidget в QDialog без появления слайдеров : Июль 29, 2019, 13:35
Спасибо, помогает
А можно как-то вычислить расстояние между краями QDialog и краями QTableWidget (на рисунке во вложении обозначены L1 и L2) до вызова функции exec() для QDialog?
39  Qt / Пользовательский интерфейс (GUI) / QTableWidget в QDialog без появления слайдеров : Июль 29, 2019, 11:04
Здравствуйте
Необходимо сделать таблицу в QDialog. Делаю следующим образом через QTableWidget, но появляются слайдеры. Этот код вызывается при нажатии кнопки в ui QMainWindow. Скрин получаемого окна прикрепляю.
Можете подсказать, как это можно исправить?
Код:
//Window
    QDialog dialogDeviceInfo(this);
    dialogDeviceInfo.setWindowFlags(dialogDeviceInfo.windowFlags() &~ Qt::WindowContextHelpButtonHint); //delete "?" from window title
    //Table
    QTableWidget *tableWidget = new QTableWidget(10,2,this);
    tableWidget->verticalHeader()->setVisible(false);
    tableWidget->horizontalHeader()->setVisible(false);
    //hLayout
    QHBoxLayout *hTableLayout = new QHBoxLayout;
    hTableLayout->addWidget(tableWidget);
    //vLayout
    QVBoxLayout *vLayout = new QVBoxLayout;
    vLayout->addLayout(hTableLayout);
    //Fill table
    for(int i = 0; i < 10; ++i){
      tableWidget->setItem(i,1,new QTableWidgetItem(QString::number(i)+QString::number(1)));
      tableWidget->setItem(i,2,new QTableWidgetItem(QString::number(i)+QString::number(1)));
    }
    tableWidget->resizeColumnsToContents();

    //Calculation height of table
    int sumHeightRowsTable = 0;
    for(int i = 0; i < tableWidget->rowCount(); i++)
        sumHeightRowsTable += tableWidget->rowHeight(i);
    int heightWindow = sumHeightRowsTable + vLayout->contentsMargins().top() +
          vLayout->contentsMargins().bottom();

    //Calculation width of table
    int sumWidthColumnsTable = 0;
    for(int i = 0; i < tableWidget->columnCount(); i++)
      sumWidthColumnsTable += tableWidget->columnWidth(i);

    tableWidget->setMaximumHeight(sumHeightRowsTable + 2*tableWidget->lineWidth());
    tableWidget->setMaximumWidth(sumWidthColumnsTable);

    tableWidget->setEditTriggers(QTableWidget::NoEditTriggers);
    dialogDeviceInfo.setMinimumSize(sumWidthColumnsTable + 70,heightWindow + 70);
    dialogDeviceInfo.setMaximumSize(static_cast<int>(sumWidthColumnsTable*1.2),static_cast<int>(heightWindow*1.2));
    dialogDeviceInfo.setLayout(vLayout);
    dialogDeviceInfo.exec();
40  Qt / ActiveX / Re: Создание книги excel : Июнь 14, 2019, 16:37
А дальше как?
Мне надо, чтобы сохраняло файл на диск
41  Qt / Дополнительные компоненты / Re: Определение встроенных COM-портов : Июнь 06, 2019, 16:17
Спасибо
У меня не получается задать ему скорость методом setBaudRate
42  Qt / Дополнительные компоненты / Определение встроенных COM-портов : Июнь 06, 2019, 11:57
Здравствуйте, вопрос может не совсем к QT относится.

Можете подсказать, есть какой-то способ определить встроенные COM-порты?
Метод QList<QSerialPortInfo> com_ports_list = QSerialPortInfo::availablePorts(); выводит все, которые есть в диспетчере устройств.
Например, на многих компьютерах есть COM1, который не подходит для передачи данных.
Есть способ такие порты вычислить, чтобы не выводить в списке доступных?
43  Qt / Пользовательский интерфейс (GUI) / Re: Организация отображения выполнения нескольких длительных процессов : Май 23, 2019, 10:17
Я понимаю так. Если мне надо скрыть QTextEdit, то мне надо поместить QTextEdit и остальные виджеты в один QVBoxLayout.
Только при изменении видимости у меня окно, в котором все виджеты не меняет размер. Все как-то уплотняется или QTextEdit не помещается в экран.

С какими флагами и установками можно поэкспериментировать?
44  Qt / Пользовательский интерфейс (GUI) / Re: Организация отображения выполнения нескольких длительных процессов : Май 22, 2019, 16:12
Разбираясь, у меня возник другой вопрос, на мой взгляд, более конкретный.
Я хочу сделать окно, которое имеет кнопку, нажав на которую появляются подробности процесса. (Пример во вложении)
У меня все подробности в нижней части окна.

Можно ли это сделать без resize(), не высчитывая размеры насколько увеличится окно? Что-то типа установил setVisible(true) и все подогналось
45  Qt / Пользовательский интерфейс (GUI) / Организация отображения выполнения нескольких длительных процессов : Май 22, 2019, 12:56
Здравствуйте
У меня есть графическая программа, которая по нажатию кнопки выполняет последовательность некоторых длительные процессов.
Я бы хотел, организовать визуальное отображение процессов для пользователя, а потом это отображение скрыть.
В моем представлении это так: есть окно, при нажатии кнопки оно расширяется вниз и в появившейся области начинается отображение выполнения первого процесса (например передача файла по сети). Прогресс этого процесса отображается в QProgressBar. По окончании его начинается следующий (например верификация переданного файла) с QProgressBar и тд. В конце выводится сообщение о том, что все прошло успешно/не успешно и окно принимает первоначальный размер.

С помощью каких виджетов это (отображение состояния процессов) лучше организовать? Какой виджет использовать для отображения процесса? Может, на ваш взгляд, есть хорошая альтернатива расширению окна?
Страниц: 1 2 [3] 4 5 ... 12

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