1591
|
Qt / Общие вопросы / Re: Вопрос про кроссплатформенность
|
: Февраль 28, 2013, 20:14
|
Например, при установке Qt Creator'a он "посмотрит" в переменных путях PATH наличие компиляторов и сможет сам их профили добавить И также прописав в этих путях, абсолютный путь к dll Qt, сможете запускать из любого места на компе ехе'шники программ, требующие qt'ные dll, не будь этого, пришлось в директории с этими ехе держать требуемые dll
|
|
|
1592
|
Qt / Qt-инструментарий / Re: Программно добавить экземпляр виджета
|
: Февраль 27, 2013, 16:56
|
Так а в чем проблема? Выделяете память под новый виджет, который хотите создать и указываете куда его разместить Пример: h: #ifndef MAINWINDOW_H #define MAINWINDOW_H
#include <QWidget> #include <QPushButton> #include <QVBoxLayout>
class MainWindow : public QWidget { Q_OBJECT public: MainWindow(QWidget *parent = 0);
private: int count;
public slots: void addButton(); };
#endif // MAINWINDOW_H
cpp: #include "mainwindow.h"
/// PUBLIC MainWindow::MainWindow(QWidget *parent): QWidget(parent), count(0) { QPushButton *pButtonAddButton = new QPushButton("Click ME!!!"); connect(pButtonAddButton, SIGNAL(clicked()), this, SLOT(addButton()));
QVBoxLayout *vBoxLayoutMain = new QVBoxLayout();
vBoxLayoutMain->addWidget(pButtonAddButton);
setLayout(vBoxLayoutMain); }
/// PUBLIC SLOTS void MainWindow::addButton() { count++;
QPushButton *pButtonNew = new QPushButton(QString::number(count)); connect(pButtonNew, SIGNAL(clicked()), this, SLOT(addButton()));
this->layout()->addWidget(pButtonNew); }
|
|
|
1595
|
Программирование / Общий / Re: Пару вопросов про winAPI
|
: Февраль 24, 2013, 16:33
|
Кое что нашел Диагональ моника можно определить так: int horizontalSize; int verticalSize; int diagonal;
HDC dc = GetDC(NULL);
horizontalSize = GetDeviceCaps(dc, HORZSIZE); verticalSize = GetDeviceCaps(dc, VERTSIZE);
diagonal = ( (sqrt ( pow(horizontalSize, 2) + pow(verticalSize, 2) ) ) / 10) / 2.54;
Лоханулся я, этот код не совсем правильный - у меня работает (19, 1024*768)
|
|
|
1597
|
Программирование / Общий / Re: Пару вопросов про winAPI
|
: Февраль 24, 2013, 14:24
|
Кое что нашел Диагональ моника можно определить так: int horizontalSize; int verticalSize; int diagonal;
HDC dc = GetDC(NULL);
horizontalSize = GetDeviceCaps(dc, HORZSIZE); verticalSize = GetDeviceCaps(dc, VERTSIZE);
diagonal = ( (sqrt ( pow(horizontalSize, 2) + pow(verticalSize, 2) ) ) / 10) / 2.54;
|
|
|
1600
|
Программирование / Общий / Re: Пару вопросов про winAPI
|
: Февраль 24, 2013, 12:59
|
Serr500, разве dmDisplayFrequency это не частота обновления? dmDisplayFrequency Specifies the frequency, in hertz (cycles per second), of the display device in a particular mode.
|
|
|
1601
|
Программирование / Общий / Re: Пару вопросов про winAPI
|
: Февраль 24, 2013, 11:38
|
Мой код определения типа процессора: QString typeProcessor() { SYSTEM_INFO systemInfo; GetSystemInfo(&systemInfo);
QString type;
switch(systemInfo.dwProcessorType) { case PROCESSOR_INTEL_386: type = "Intel 386"; break;
case PROCESSOR_INTEL_486: type = "Intel 486"; break;
case PROCESSOR_INTEL_PENTIUM: type = "Intel Pentium"; break;
case PROCESSOR_MIPS_R4000: type = "Mips R4000"; break;
case PROCESSOR_ALPHA_21064: type = "Alpha 21064"; break;
case PROCESSOR_INTEL_IA64: type = "Intel IA64"; break; }
return type; }
neversleep, как вы видите про SYSTEM_INFO и GetSystemInfo я знаю. Просто не уверен что тип проца это именно то что написал... Тогда что будет поколением процессора - wProcessorArchitecture? Но его я не могу использовать... HDC dc = GetDC(GetDesktopWindow()); if (dc) { cout << "Screen size: " << GetDeviceCaps(dc, HORZRES) << "x" << GetDeviceCaps(dc, VERTRES) << endl; cout << "Refresh rate: " << GetDeviceCaps(dc, VREFRESH) << endl; cout << "Bits/Pixel: " << GetDeviceCaps(dc, BITSPIXEL) << endl; ReleaseDC(GetDesktopWindow(), dc); } Тут находится разрешение экрана, частота обновления и глубина цвета, мне же нужно частота кадров
|
|
|
1603
|
Программирование / Общий / Пару вопросов про winAPI
|
: Февраль 24, 2013, 03:00
|
Здравствуйте! Дали задание сделать тестировщик windows Требования к тестировщику: - Процессор: тип процессора, количество процессоров, поколение процессоров
- Память: загрузка памяти, объем доступной оперативной памяти, объем свободной оперативной памяти, размер файла подкачки, максимальный размер памяти для процессов, свободная память для процессов
- Видео: разрешение экрана, глубина цвета, частота обновления экрана, кадровая частота, виртуальный рабочий стол, размеры экрана, относительная ширина пикселя устр-ва, относительная высота пикселя устройства
- Атрибуты диска: тип носителя, файловая система, метка тома, серийный номер тома, доступно памяти для пользователя, всего на диске байт?(в том числе занято и свободно)
- Клавиатура: тип устр-ва, количество функциональных клавиш
- Мышь: количество кнопок мыши, наличие ролика прокрутки, время двойного щелчка.
- Система: операционная система, версия сборки, текущий пользователь, имя компа, системный каталог, каталог виндуса, режим загрузки
Подскажите как определить то что выделил красным PS. виртуальный рабочий стол проверял через Qt: QDesktopWidget::isVirtualDesktop(), но не уверен что это правильно PPS. Также с типом процессора и поколением непонятно, для определения типа использовал GetSystemInfo() и проверял поле dwProcessorType, для поколения - поле wProcessorLevel, но и в этом не уверен PPPS. Гугление показало что размер экрана не определить точно
|
|
|
|
|