×
Namespaces

Variants
Actions

Archived:Carregar, redimensionar e configurar imagens de fundo, em aplicações Qt

From Nokia Developer Wiki
Jump to: navigation, search

Archived.pngAquivado: Este artigo foi arquivado, pois o conteúdo não é mais considerado relevante para se criar soluções comerciais atuais. Se você achar que este artigo ainda é importante, inclua o template {{ForArchiveReview|escreva a sua justificativa}}.

Qt Quick should be used for all UI development on mobile devices. The approach described in this article (based on QWidget) is deprecated.

Article Metadata

Exemplo de código
Testado com
SDK: Qt 4.5
Aparelho(s): Nokia 5800 XpressMusic

Compatibilidade
Plataforma(s): S60 3rd Edition, FP1, FP2
S60 5th Edition
Symbian

Artigo
Palavras-chave: QWidget::setPalette(), QPalette::setBrush, QPixmap(),QPixmap::scaled()
Tradução:
Por valderind4
Última alteração feita por hamishwillee em 11 Oct 2012

Contents

Introdução

Este trecho de código mostra como carregar, redimensionar e configurar uma imagem de fundo de um widget. A API QPixmap() carregará a imagem usando o nome do arquivo. Já a API QPixmap::scaled() retornará uma cópia do pixmap dimensionado para um retângulo com a largura e altura especificados. QPalette::setBrush(), por sua vez, configura o pincel para a |função de uma determinada cor (no caso, imagem de fundo) para o pincel especificado (no caso, a imagem) para todos os grupos na paleta de cores. Finalmente,QWidget::setPalette() configura uma paleta para um Widget.

Este código pode ser auto-assinado uma vez que ele não usa nenhuma API que requer assinatura de desenvolvedor/certificado.

Cabeçalhos requeridos

#include <QPalette>
#include <QDesktopWidget>

Código

void SetBackground::SetBackgroundImage()
{
//Utilizando QPalette você pode setar a imagem de background como a seguir.
QPalette p = palette();
 
//Carrega a imagem para o QPixmap. Passa o endereço inteiro da imagem
QPixmap pixmap1("c://01.JPG"); //Para o emulador C: é ..\epoc32\winscw\c, assim, a imagem deve estar nessa localização
 
//Redimensiona a imagem se esta for maior que o tamanho da tela
QDesktopWidget* desktopWidget = QApplication::desktop();
QRect rect = desktopWidget->availableGeometry();
 
QSize size(rect.width() , rect.height());
//Redimensiona com base nos seus requisitos.
QPixmap pixmap(pixmap1.scaled(size));
 
p.setBrush(QPalette::Background, pixmap);
setPalette(p);
}


Conclusões

É esperado que o código mostre uma imagem de fundo em uma aplicação.

BackImage.JPG

Exemplo de código

  • O código exemplo ajustará a imagem de fundo (background) na tela e foi testado no Nokia 5800 XpressMusic.
This page was last modified on 11 October 2012, at 04:13.
268 page views in the last 30 days.