Собсно вот что не так. Есть класс kmmsPlaylist, в него передаётся
QPixmap в функцию (сразу попрошу не говорить про указатель, я его
заюзаю как только решу проблемму) setSelectItemPix(QPixmap selectItemPix) и она задаёт QPixmap select.
Так вот, как видно из кода, для проверки, того что QPixmap передалась,
я создаю виджет w и задаю его фон как select, в setSelectItemPix проблемм нет,
фон такой какой и должен быть, в моём случае синий, но, когда для той же
проверки я создаю виджет в loadPlaylist(QString *path) то его фон не меняется
и остаётся дефолтным, опять же в моём случае это серый.
Вот и вопрос, почему значение QPixmap select видно только из
setSelectItemPix, а в других функциях нет.
Пробовал кинуть select в паблик, но результат тот же, от безисходности
думал поможет.
kmmsPlaylist.h
/********************************************************************/
class kmmsPlaylist : public QWidget
{
Q_OBJECT
public:
kmmsPlaylist(QString name); //constructor
~kmmsPlaylist(); //destructor
void savePlaylist(); //write playlist to hdd
void loadPlaylist(QString *path); //read playlist from hdd
QString* name(){return name_playlist;} //name of playlist
void setName(QString name); //set name of playlist
void setItemsBackground(QPixmap pix);
void setItemsBackground(QWidget widget);
void setSelectItemPix(QPixmap selectItemPix);
void addItem(QString path_to_file, QString name); //add item to playlist
void removeItem(QString); //remove item from playlist
int numItem(){return num_items;} //num of items in playlist
void resizeEvent (QResizeEvent *);
private:
bool first_click;
int current_set_item, prev_set_item;
QPixmap select;
QString *name_playlist; //name of playlist
int num_items; //num of items
QStringList *str_items; //content of playlist
QPtrList<kmmsPlaylistItem> items; //vector of items of list
public slots:
void itemsChangeState(int id);
};
/********************************************************************/
kmmsPlaylist.cpp
/********************************************************************/
kmmsPlaylist::kmmsPlaylist(QString name)
{
...
}
kmmsPlaylist::~kmmsPlaylist()
{
}
void kmmsPlaylist::setName(QString name)
{
...
}
void kmmsPlaylist::removeItem(QString name)
{
}
void kmmsPlaylist::addItem(QString path, QString name)
{
...
}
void kmmsPlaylist::resizeEvent (QResizeEvent *)
{
...
}
void kmmsPlaylist::savePlaylist()
{
}
void kmmsPlaylist::loadPlaylist(QString *path)
{
QFile *file = new QFile(*path);
...
delete file;
QWidget *w = new QWidget(); <---
w->setBackgroundPixmap(select); <--- Проверка
w->resize(100,100); <---
w->show(); <---
}
void kmmsPlaylist::setSelectItemPix(QPixmap selectItemPix)
{
select = QPixmap(selectItemPix);
QWidget *w = new QWidget(); <---
w->setBackgroundPixmap(select); <--- Проверка
w->resize(100,100); <---
w->show(); <---
}
void kmmsPlaylist::itemsChangeState(int id)
{
...
}
/********************************************************************/
Содержимое остальных функций никак не влияет на QPixmap select.
Что не так?!
Заранее спасибо!!!
Ответ на:
комментарий
от bugmaker

Ответ на:
комментарий
от cyclon

Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.
Похожие темы
- Форум Передача виджета. (2005)
- Форум не пашут слоты (2003)
- Форум Десериализация объёктов JPA в JSON (2018)
- Форум QComboBox c множественным выбором (2020)
- Форум Как отвязать QPixmap от Pixmap'а? (2015)
- Форум QPopupMenu ? (2005)
- Форум Как использовать этот класс? (2021)
- Форум Named entity graph сразу для двух списков портит данные (2018)
- Форум Забавное поведение при отображении QAbstractItemModel на QSortFilterProxyModel (2013)
- Форум Ошибка qt с++ (2024)