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

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

Страниц: [1]   Вниз
  Печать  
Автор Тема: QPixmap и Mplayer исчезает картинка [Решено]  (Прочитано 2994 раз)
santaclaus
Гость
« : Апрель 15, 2010, 14:49 »

Всем доброго времени!
Вот суть проблемы: есть главное окно, в котором располагаются два дочерних.
В одном дочернем окне выводится картинка, в другом идет воспроизведение видео, окна находятся друг на друге и просто меняются местами.
Когда начинается воспроизведение видео на переднем окне с картинкой образуются дырки, через которые видно видяшку, кто подскажет что может быть и куда рыть?

делаю окна

Код
C++ (Qt)
Client::Client(QWidget* pwgt) : QWidget(pwgt)
{
outVideo = new QWidget(this);
outVideo->setWindowModality(Qt::WindowModal);
outVideo->setGeometry(500,0,800,600);
outVideo->setStyleSheet("QWidget { background: Red }");
 
output = new OutPut(this);
output->setWindowModality(Qt::WindowModal);
output->setStyleSheet("QWidget { background: Yelloy}");
 

получаю идентификатор окна, в нем запускаю видео
Код
C++ (Qt)
void Client::runPlay()
{
       QString program = "mplayer";
QStringList param;
QString wind;
wind.setNum(outVideo->winId());
//param << "-quiet" << "-slave" << "-wid" << wind << "./video/001.avi";
mplayer_proc->start(program, param);
}
 

вот так в другом окне рисую картинку
Код
C++ (Qt)
void OutPut::drawImage(QPainter *painter, QString x, QString y, QString width, QString height, QString company)
{
QRectF target(x.toInt(),y.toInt(),width.toInt(),height.toInt());
QRectF source(0,0,0,0);
QString getImage;
getImage = "./" + company + ".png";
QPixmap pixmap(getImage);
painter->drawPixmap(target, pixmap, source);
}
 

а вот paintEvent
Код
C++ (Qt)
void OutPut::paintEvent(QPaintEvent *)
{
   painter = new QPainter(this);
   painter->begin(this);
   if (LangSel == 1){
Read (painter, "alertData.xml");
   }
painter->end();
}
 

Всем спасибо!
« Последнее редактирование: Апрель 17, 2010, 09:30 от santaclaus » Записан
GreatSnake
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 2921



Просмотр профиля
« Ответ #1 : Апрель 16, 2010, 09:03 »

Чего-то всё так сильно перемудрено Грустный
Книжки по Qt читали? Примеры смотрели?
Чем вам не подошел тот-же QLabel?
Записан

Qt 5.11/4.8.7 (X11/Win)
santaclaus
Гость
« Ответ #2 : Апрель 17, 2010, 09:30 »

В общем дело получилось в самой картинки!
взял исходное изображение, кинул его на черный фон, при сохранении PNG формата снял флажки с пунктика "прозрачность" и все стало хорошо.

Всем спасибо за участие.
Записан
Страниц: [1]   Вверх
  Печать  
 
Перейти в:  


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