Qt中为工程添加资源文件、给按钮添加图片

为工程添加资源文件、给按钮添加图片


2016.9.26

上一次布局好之后做了小小的改动,就是在左边放按钮的上面添加了一个放logolabel(虽然还没有想好要放什么logo—— )

现在的布局就是这样子了:


下面要做的是给按钮添加图标,还有在logo和右边的大label上放上初始的图片,这里就需要为工程添加资源文件了,步骤如下:

1、右击项目文件夹选择添加新文件——选择Qt——Qt resource file




2、填写好name后点下一步、完成,然后双击项目中生成的.qrc文件,点击添加,选择添加前缀


2、添加好前缀之后就可以添加文件了,选择需要添加的文件,这里需要把需要添加的文件先放到项目目录下的一个文件夹下,添加好之后保存,就能在资源浏览器中看到了,也就能在代码中引用了。





明天就可以把图标和logo添加上去了

——————————————————————————————————————————


/******

这里有个小插曲,我发现一开始我的movie都写成了moive ,以为要一个个改感觉好麻烦,后来发现可以将光标移动到需要更改的变量上,Ctrl + Shift + R这样就能把项目中的这个变量名称一起改掉了


********/

回到正题——给按钮添加图标,一共分为以下几步:

1、申明一个QIcon对象用来存放图标

QIcon button_ico(":/new/icon/srcs/movieclicked.png");


2、按钮对象调用setIcon()函数把图片加载到button

button_movie->setIcon(button_ico);

运行一下发现按钮的大小和图标的大小都感觉很别扭:


我想最好能图标变大一点,然后按钮和图标一样大。

但是发现无论是在将button放到layout之前还是之后调用QPushButtonresize()函数都没有效果。

我想因为是放在layout里就算是resize后也会根据窗口的大小又自动改掉,所以就直接把按钮的最大最小值设置为一样就行了:

 QIcon button_ico(":/new/icon/srcs/movieclicked.png");
    button_movie = new QPushButton;
    button_movie->setMinimumSize(33,33);
    button_movie->setMaximumSize(33,33);
    button_movie->setIcon(button_ico);
    button_movie->setIconSize(QSize(28,28));

效果就是这样的:



图标添加完了,接着就把logo和右边的label上添加上图片


添加图片部分的代码如下:

logo_label = new QLabel("LOGO");        //添加图片
    QImage *logo_img = new QImage(":/new/label/srcs/logo.png");
    QImage *scaled_logo_img = new QImage();
    *scaled_logo_img=logo_img->scaled(150,120,Qt::KeepAspectRatio);
    logo_label->setPixmap(QPixmap::fromImage(*scaled_logo_img));


右边图片的添加方法和这个logo是一样的。




你可能感兴趣的:(Qt,编程)