码迷,mamicode.com
首页 > 其他好文 > 详细

nsis页眉铺满图片

时间:2014-10-03 18:03:44      阅读:383      评论:0      收藏:0      [点我收藏+]

标签:nsis   脚本   api   

这是群里有人经常询问的一个问题,其实自己仔细看看帮助文档,问问百度谷歌,很好解决。无非是两个方案。

第一,使用ResHacker之类的工具修改nsis自带的ui模版,控件id为1046,用鼠标将控件拖至铺满整个页眉保存后在脚本里面引用即可

第二代码解决这个问题,其实感觉还是修改ui模版是比较直观的办法,也好理解,但代码解决也无不可,看个人的习惯和能力,用代码解决有两个方式,API函数MoveWindow或者SetWindowPos,这两个函数谈不上孰优孰劣,我个人觉得使用MoveWindow比较对路

函数功能:改变指定窗口的位置和大小.对顶窗口来说,位置和大小取决于屏幕的左上角;对子窗口来说,位置和大小取决于父窗口客户区的左上角.对于Owned窗口,位置和大小取决于屏幕左上角.
 
函数原型:BOOL MoveWindow( HWND hWnd, int X, int Y, int nWidth, int nHeight, BOOL bRepaint );
 
nsis代码中使用system.dll调用MoveWindow方法如下:


GetDlgItem $0 $HWNDPARENT1046 #获取图片控件句柄
System::Call `user32::MoveWindow(ir0,i0,i0,i500,i60,i1)in` #修改图片控件位置,
${NSD_SetImage} $0 "$PLUGINSDIR\TEST.bmp"$1 #加载图片

 

nsis页眉铺满图片

标签:nsis   脚本   api   

原文地址:http://blog.csdn.net/shuijing_0/article/details/39755459

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!