Russian Qt Forum

Qt => Пользовательский интерфейс (GUI) => Тема начата: ruzik от Февраль 19, 2011, 22:03



Название: QColor
Отправлено: ruzik от Февраль 19, 2011, 22:03
Здравствуйте, скажите пожалуйста почему не срабатывает следующее присваивание
   const QColor * c = & QColor.red;
пишет
Ошибка   2   error C2275: QColor: недопустимое использование этого типа в качестве выражения   c:\Documents and Settings\rustam\Мои документы\Visual Studio 2008\Projects\Rizek Action Manager\Rizek Action Manager\rizekactionmanager.cpp   33
А почему это выражение нельзя использовать в качестве выражения
Пробовал так
const QColor * c = & QColor.rgb(12,12,12);
То же самое
Заранее спасибо!


Название: Re: QColor
Отправлено: alexman от Февраль 19, 2011, 22:16
Так как смотри доку и читай книги по c++.
Код:
 int QColor::red () const


Название: Re: QColor
Отправлено: ruzik от Февраль 19, 2011, 22:56
Ну в книгах по С++ про QColor не пишут  ;D


Название: Re: QColor
Отправлено: Fat-Zer от Февраль 19, 2011, 22:58
Ну в книгах по С++ про QColor не пишут  ;D
после прочтения книг по С++ хотя бы такую чушь не будете писать...


Название: Re: QColor
Отправлено: ruzik от Февраль 19, 2011, 23:08
А не уточните как именно это использовать, как я не коверкал все равно выдавало ошибки, типа
Ошибка   1   error C2062: тип "int" не требуется   c:\Documents and Settings\rustam\Мои документы\Visual Studio 2008\Projects\Rizek Action Manager\Rizek Action Manager\rizekactionmanager.cpp   38
Пробовал так:
const QColor * c = & int QColor::red () const;
const int * c = & int QColor::red () const;
И другими способами, на которые вылетало множество ошибок
Заранее спасибо!


Название: Re: QColor
Отправлено: m_ax от Февраль 19, 2011, 23:14
Цитировать
Пробовал так:
const QColor * c = & int QColor::red () const;
const int * c = & int QColor::red () const;
;D Ну вы и извращенец)) Даже я бы так не смог придумать))
Надо будет запомнить)




Название: Re: QColor
Отправлено: m_ax от Февраль 19, 2011, 23:22
Цитировать
Пробовал так:
const QColor * c = & int QColor::red () const;
const int * c = & int QColor::red () const;
;D Ну вы и извращенец)) Даже я бы так не смог придумать))
Надо будет запомнить)


Название: Re: QColor
Отправлено: ruzik от Февраль 19, 2011, 23:30
Да просто что только я не перепробовал-ничего не помогает, сам понимаю что фигня  ;D
Кстати объясните, пожалуйста почему вот это:  const QColor * c = & QColor.red; неправильно


Название: Re: QColor
Отправлено: Fat-Zer от Февраль 19, 2011, 23:33
если вам просто нужен красный цвет, то самый разумный вариант:
Код
C++ (Qt)
QColor col = Qt::red; // если на стеке
QColor *col = new QColor(Qt::red); // если в куче
QColor *col = new QColor(255,0,0); // или так
 
Да просто что только я не перепробовал-ничего не помогает, сам понимаю что фигня  ;D
Кстати объясните, пожалуйста почему вот это:  const QColor * c = & QColor.red; неправильно
если кратко, то потому что здесь чушь написана... с тем же успехом можно было бы написать:
Код
C++ (Qt)
col$&@QColorR#e@d!!
опять же выучите синтаксис С++ хоть на минимальном уровне...


Название: Re: QColor
Отправлено: ruzik от Февраль 19, 2011, 23:38
Спасибо за помощь!