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

Войти
 
  Начало   Форум  WIKI (Вики)FAQ Помощь Поиск Войти Регистрация  

Страниц: [1]   Вниз
  Печать  
Автор Тема: вывод по клавише  (Прочитано 3581 раз)
Omgnom
Гость
« : Ноябрь 18, 2010, 16:29 »

Не могу никак сделать вывод квадрата или текста по клавише. В какую сторону копать? Выводить виджет новый или на существующем как? Буду рад за наводки или примеры программ.
Записан
Пантер
Administrator
Джедай : наставник для всех
*****
Offline Offline

Сообщений: 5876


Жаждущий знаний


Просмотр профиля WWW
« Ответ #1 : Ноябрь 18, 2010, 16:43 »

Сначала напиши что пробовал и что не получилось.
Записан

1. Qt - Qt Development Frameworks; QT - QuickTime
2. Не используйте в исходниках символы кириллицы!!!
3. Пользуйтесь тегом code при оформлении сообщений.
Omgnom
Гость
« Ответ #2 : Ноябрь 18, 2010, 17:19 »

В сути, не знаю как вывести виджет по команде. Будь то клавиша или мышь. mousePressEvent у меня не подключается. Знаю, что надо копать от начала изучения qt, но примеров в книге не найду, а без примера не разберусь что-то.

К примеру, вот программа, выводящяя текст на экран. А как вывести по клавише или мыши не знаю.

Цитировать
#include <QtGui>

class DrawTextWidget : public QWidget {
protected:
    virtual void paintEvent(QPaintEvent*)
    {
        QPainter painter(this);
        QRect    r = rect();
        painter.setFont(QFont("Times", 50, QFont::Normal));
        painter.drawRect(r);
        painter.drawText(r, Qt::AlignCenter | Qt::TextWordWrap, "Hello world");
    }

public:
    DrawTextWidget(QWidget* pwgt = 0) : QWidget(pwgt)
    {
    }
};

int main(int argc, char** argv)
{
    QApplication app(argc, argv);

    DrawTextWidget dtw;

    dtw.resize(300, 200);
    dtw.show();

    return app.exec();
}

Где можно почитать? Шлее? Почему не работает mousePressEvent?
Записан
alexman
Гость
« Ответ #3 : Ноябрь 18, 2010, 17:27 »

Так переопредели void QWidget::mousePressEvent ( QMouseEvent * event ) [virtual protected].
Запомни, что нужно, и вызывай update().
Записан
Omgnom
Гость
« Ответ #4 : Ноябрь 18, 2010, 17:46 »

извините, можете в пример запихать? Только начал изучать. Либо более обобщеную информацию.
Записан
GreatSnake
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 2921



Просмотр профиля
« Ответ #5 : Ноябрь 19, 2010, 09:37 »

Вы сами не приложив и толики усилий, обращаетесь в форум и просите: "Народ, я до безобразия ленивый, научите меня...".
Лень читать книги - смотрите примеры в ассистенте или здесь.
На самом деле так нельзя, т.к. форум предназначен для решения проблем, а не для обучения азам.
Записан

Qt 5.11/4.8.7 (X11/Win)
Omgnom
Гость
« Ответ #6 : Ноябрь 19, 2010, 19:04 »

наконец кинули на примеры. спасибо
ps переместите в вопросы новичков
« Последнее редактирование: Ноябрь 19, 2010, 19:06 от Omgnom » Записан
Страниц: [1]   Вверх
  Печать  
 
Перейти в:  


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