精华内容
下载资源
问答
  • 怎么在图片上加对话框
    2019-10-06 07:51:17

    1、用图片控件 
      在对话框中加入Picture控件,属性页中General->Type设为Bitmap, Image中选中相关联的图片资源号。 
      这样就编译运行,你就会发现它己经可以了。 
      耶,不对,图片复盖了其它控件!怎么办? 
      哈哈,这是由于你的Picture控件是后面放上去的。这样它会显示在最上层,所以有些控件看不到了。有两种方法可以解决: 
      (1)、选中所有控件Ctrl+A, 然后取消对图片控件的选择,将其它控件剪切Ctrl+X,再粘帖 Ctrl+C, 编译运行或Ctrl+T看看,是不是可以了? 
      (2)、在.rc文件中找到此对话框的定义,此处以例子中的一对话框为例。 
        IDD_DLG_USE_STATIC DIALOGEX 0, 0, 266, 201 
        STYLE DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU 
        EXSTYLE WS_EX_APPWINDOW 
        CAPTION "DlgUseStatic" 
        FONT 9, "宋体" 
        BEGIN 
          CONTROL     129,IDC_STATIC,"Static",SS_BITMAP,0,0,266,201 
           PUSHBUTTON     "取消",IDCANCEL,210,23,50,14 
           DEFPUSHBUTTON "确定",IDOK,210,7,50,14 
            LTEXT       "这是个通过图片控件来实现Dialog背景的",IDC_STATIC,13,106,156,8 
            PUSHBUTTON     "方法二>>",IDC_BUTTON1,215,104,50,14 
       END 
       在BEGIN至END中便是各个控件的定义和先后顺序,你可以随意调整它们的顺序,这样最先的,它将会显示在最底层(即可能被其它控件覆盖)。

     

     

     


    2、在WM_PAINT中画图 
      这是显示图片最常用的方法,各类窗体、控件要加上背景都基本上是在OnPaint中将图片画上。具体做法如下:

      //从资源中载入图片 
      CBitmap bmp; 
      bmp.LoadBitmap(IDB_BITMAP1); 
      //得到图片信息 
      BITMAP bmpInfo; 
      bmp.GetBitmap(&bmpInfo); 
      //在内存中创建一个位图兼容设备 
       CDC dcMemory; 
      dcMemory.CreateCompatibleDC(&dc); 
       //将图片选入兼容设备 
      CBitmap *pOldBmp=dcMemory.SelectObject(&bmp); 
      //将兼容设备的内容copy到屏幕设备中,实现真正的Paint 
      dc.BitBlt(0, 0, bmpInfo.bmWidth, bmpInfo.bmHeight, &dcMemory, 0, 0, SRCCOPY); 
      //将设备还原 
      dcMemory.SelectObject(pOldBmp);

      这样图片便显示在主对话框上。  

      特殊处理: 
      是不是经常有人提到某些加快图形显示、减少闪烁?处理什么WM_ERASEBKGND消息? 
      确实是这样,应为每个窗体重画时,它先会发WM_ERASEBKGND消息,让窗体用设置好的刷子将窗体需要重画的区域刷一次,然后才会发送 WM_PAINT消息,将需要的再画上去。这样就可以保证不会有残留的图形。但这样就会在短暂的时间内出现灰色背景,如果执行比较慢,就会让人感觉到。因此如果你确定不需要清除原有的背景,那么你就可以在OnEraseBkgnd中直接返回TRUE,或者直接在这里面绘图。 
      但一定要注意,不擦除背景时弄不好会带来上些麻烦事,源码中有此演示(由于一开始设置为不擦除背景,所以窗体创建时,没有画图的部分将显示为原来屏幕上的图象)。

      同时源码中演示了对图片的拉申,实质上通过CDC我们可以对图象进行众多的处理,请参见有观资料或MSDN。

    转载于:https://www.cnblogs.com/lemon0823/archive/2013/03/04/2942291.html

    更多相关内容
  • **图片设计**中经常会采用添加注释的方式来进行问题的解答,有些图片通过输入简单的文字就能够让人了解图片展现的主题内容是什么。但是输入简单的文本框看起来会营销图片展现的效果,怎样添加文字才能看起来与图片...

    在**图片设计**中经常会采用添加注释的方式来进行问题的解答,有些图片通过输入简单的文字就能够让人了解图片展现的主题内容是什么。但是输入简单的文本框看起来会营销图片展现的效果,怎样添加文字才能看起来与图片的展现不冲突呢?接下里教大家如何在图片中插入文字泡的操作技巧。
      首先,上传图片也可以选择模板进行编辑。
      在这里插入图片描述

    点击素材,找到文字容器,点击全部。
      在这里插入图片描述

    点击对话框的分类,看到对话框下的文字泡。
      在这里插入图片描述

    选择合适的文字泡插入到模板或者图片,点击文字泡在右侧调整文字泡的颜色,投影,位置等功能。
      在这里插入图片描述

    点击文字,选择插入正文,双击文字框编辑文字,具体文字编辑可参考找图设计的文字如何编辑?
     在这里插入图片描述

    比如设计两个人在对话,选择两个人物的矢量图,然后添加对话框,输入文字,设个背景,对话框的颜色也可以根据图片的背景更换,如下图所示。
      在这里插入图片描述

    操作非常的简单,比如做课件,或者PPT文档设计图片的时候都可以使用,希望对有需要的朋友有所帮助。

    展开全文
  • 主要为大家详细介绍了JavaScript实现简易聊天对话框,附加滚动条功能,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
  • 主要介绍了Android系统默认对话框添加图片的相关资料,非常不错,具有参考借鉴价值,需要的朋友可以参考下
  • 引入:自身没有,引用外部。插入:自身拥有,直接应用。1、软件图标ico引入vc++6是一个IDE,不会...选择相应的ico图片,然后命名ID为1(默认为IDI_ICON1,改成1),重新构建。也可以单击资源文件(resource.rc)右键--&g...

    引入:自身没有,引用外部。

    插入:自身拥有,直接应用。

    1、软件图标ico 引入

    vc++6是一个IDE,不会自带各种ico资源,所以得用外部资源,得使用引用。

    单击资源文件(resource.rc)右键-->插入……-->Icon,选择引入-->选择相应的ico图片,然后命名ID为1(默认为IDI_ICON1,改成1),重新构建。

    也可以单击资源文件(resource.rc)右键-->引入-->选择相应的ico图片,然后命名ID为1,重新构建。

    ico制作:可以百度 ico 制作或直接去网站http://www.ico.la/

    2、软件菜单 插入

    因为菜单资源是vc6自身就有的资源,所以直接插入即可。

    单击资源文件(resource.rc)右键-->插入……-->Menu-->新建。双击即可重命名(例如重命名为“打开文档判断关键层[&O]”,点击别处,再双击“打开文档判断关键层[&O]”就出现默认ID号,可根据自己需要重命名它,例如

    ID_MENUITEMOPEN1)

    建好后 单击IDD

    MAIN 图框,右键属性,菜单选择刚才新建的manu(默认IDR_MENU1)即可,

    子菜单 右击“文件编辑”等自己新建的按钮,右键属性 选择弹出

    快捷键:在 文件(&F) 即可

    分隔符:在那个子菜单按钮前勾选分隔符即可

    响应菜单可以

    case ID_MENUITEMOPEN1:

    {

    //写响应代码

    }

    break;

    3、图片资源 引入

    单击资源文件(resource.rc)右键-->引入-->文件过滤器中选择所有文件,选择相应要引入的图片(只能是bitmap24位图片,不是的话可以用windows自带的画图工具另存为转换一下)-->在窗口插入图像控件(空间bar找不到?工具--定制--工具栏-控件),选择属性位图即可。

    学习自:如鹏网如鹏网

    4、

    插入组合框后没有下拉菜单,用以下代码

    #include

    #include "resource.h"

    BOOL CALLBACK DlgProc(HWND,

    UINT, WPARAM, LPARAM);

    int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE

    hPrevInstance, LPSTR szCmdLine, int nCmdShow)

    {

    DialogBox(hInstance, MAKEINTRESOURCE(IDD_DIALOG), NULL,

    DlgProc);

    return 0;

    }

    BOOL CALLBACK DlgProc(HWND hDlg, UINT uMsg, WPARAM wParam,

    LPARAM lParam)

    {

    HWND hCombo;

    switch(uMsg)

    {

    case WM_INITDIALOG: //对话框的初始化

    hCombo = GetDlgItem(hDlg, IDC_COMBO);

    SendMessage(hCombo, CB_ADDSTRING, 0,

    (LPARAM)TEXT("Qiye"));

    return TRUE;

    case WM_CLOSE:

    EndDialog(hDlg, 0);

    return TRUE;

    default:

    break;

    }

    return FALSE;

    }

    5、关于插入对话框,以后整理了在上传

    首先:在资源中Dialog右键选择插入Dialog,会多出来一个对话框,重命名为LOGINDLG并调整控件。

    然后:在Case_OK 下面添加如下代码

    HINSTANCE

    hInstance=(HINSTANCE)GetWindowLong(hwnd,GWL_HINSTANCE);

    DialogBox(hInstance,

    MAKEINTRESOURCE(IDD_LOGINDIALOG), NULL, Main_Proc);//不能传参数

    上面就可以运行了。但是用的是Main_Proc这个主窗口的过程,子窗口要有自己的过程,上面仅能跑起来罢了,不能传递参数啥的,下面给LoginDlg弄一个过程。

    过程是:每个对话框都有自己的一套MainDlg.cpp类似的代码,Main_Proc,Main_OnInitDialog

    等等。新建一个LoginDlg.cpp的文档,将MainDlg.cpp里的代码复制到LoginDlg.cpp中,并将Main_Proc,Main_OnInitDialog

    等的前缀变为LoginDlg_***,函数名不能重复。然后同理复制一份LoginDlg.h,把_MAIN_H变为_LOGINDLG_H,并将Main_Proc,Main_OnInitDialog

    等的前缀变为LoginDlg_***,函数名也不能与不能与MainDlg.h重复。

    //文件MainDlg.cpp内容如下:

    #include "stdafx.h"

    #include

    #include

    #include "resource.h"

    #include "MainDlg.h"

    #include "LoginDlg.h"

    BOOL WINAPI Main_Proc(HWND hWnd, UINT uMsg, WPARAM wParam, LPARAM

    lParam)

    {

    switch(uMsg)

    {

    HANDLE_MSG(hWnd, WM_INITDIALOG, Main_OnInitDialog);

    HANDLE_MSG(hWnd, WM_COMMAND, Main_OnCommand);

    HANDLE_MSG(hWnd,WM_CLOSE,

    Main_OnClose);

    }

    return

    FALSE;

    }

    BOOL Main_OnInitDialog(HWND hwnd, HWND hwndFocus, LPARAM

    lParam)

    {

    return

    TRUE;

    }

    void Main_OnCommand(HWND hwnd, int id, HWND hwndCtl, UINT

    codeNotify)

    {

    switch(id)

    {

    case IDC_OK:

    {

    HINSTANCE

    hInstance=(HINSTANCE)GetWindowLong(hwnd,GWL_HINSTANCE);

    //实验传递数字

    //实验传递字符串

    //实验传递结构体

    //实验在MainDlg中得到用户在LoginDlg.cpp中修改的东西(改变结构体),即由LoginDlg.cpp向MainDlg传递数据

    LoginData

    id;

    id.userName

    ="zhubinglong";

    id.passWord

    ="123456";

    DialogBoxParam(hInstance,

    MAKEINTRESOURCE(IDD_LOGINDIALOG), NULL,

    LoginDlg_Proc,(LPARAM)&id);

    MessageBox(hwnd,id.userName ,TEXT(""),MB_OK);

    //实验用SetWindowLong,GetWindowLong函数传递由由LoginDlg.cpp向MainDlg传递的数据而不用上面的全局变量方法了

    //下面处理怎样确定用户在子窗口点击了什么,确定还是取消

    int

    retCode=DialogBoxParam(hInstance,MAKEINTRESOURCE(IDD_LOGINDIALOG),NULL,LoginDlg_Proc,(LPARAM)&id

    );

    if(1==retCode)

    {

    MessageBox(hwnd,TEXT("用户点击了确定"),TEXT(""),MB_OK

    );

    }

    else

    if (0==retCode)

    {

    MessageBox(hwnd,TEXT("用户点击了取消"),TEXT(""),MB_OK

    );

    }

    //DialogBox(hInstance,

    MAKEINTRESOURCE(IDD_LOGINDIALOG), NULL, Main_Proc);//不能

    }

    break;

    default:

    break;

    }

    }

    void Main_OnClose(HWND hwnd)

    {

    EndDialog(hwnd, 0);

    }

    //文件LoginDlg.cpp内容如下:

    #include "stdafx.h"

    #include

    #include

    #include "resource.h"

    #include "LoginDlg.h"//改变头文件,并将下面的四个Main_都改成LoginDlg_

    #include "stdlib.h"//itoa

    #include //sprintf

    BOOL WINAPI LoginDlg_Proc(HWND hWnd, UINT uMsg, WPARAM wParam,

    LPARAM lParam)

    {

    switch(uMsg)

    {

    HANDLE_MSG(hWnd, WM_INITDIALOG, LoginDlg_OnInitDialog);

    HANDLE_MSG(hWnd, WM_COMMAND, LoginDlg_OnCommand);

    HANDLE_MSG(hWnd,WM_CLOSE,

    LoginDlg_OnClose);

    }

    return

    FALSE;

    }

    BOOL LoginDlg_OnInitDialog(HWND hwnd, HWND hwndFocus, LPARAM

    lParam)

    {

    //在这儿处理传入参数,lParam就是传入的参数

    //传入数字实验

    //传入字符串实验

    //传入结构体

    //在MainDlg中得到用户在LoginDlg.cpp中修改的东西(改变结构体),即由LoginDlg.cpp向MainDlg传递数据

    //实验用SetWindowLong,GetWindowLong函数传递由由LoginDlg.cpp向MainDlg传递的数据而不用上面的全局变量方法了

    LoginData*

    id=(LoginData*)lParam;

    SetWindowLong(hwnd,GWL_USERDATA,(LPARAM)id);//SetWindowLong可以设置与窗口句柄关联的数据,把数据给窗口,SetWindowLong可以看作是把一些数据与窗口管理起来,“让他代为保管”

    //id.userName

    ="lijibao";//是错误的

    return

    TRUE;

    }

    void LoginDlg_OnCommand(HWND hwnd, int id, HWND hwndCtl, UINT

    codeNotify)

    {

    switch(id)

    {

    case IDOK:

    {

    TCHAR

    userName[255];

    TCHAR

    passWord[255];

    GetDlgItemText(hwnd,IDC_EDITUSERNAME,userName,sizeof(userName)/sizeof(TCHAR) );

    GetDlgItemText(hwnd,IDC_EDITUSERNAME,passWord,sizeof(passWord)/sizeof(TCHAR) );

    LoginData* id=

    (LoginData*) GetWindowLong(hwnd,GWL_USERDATA);

    id->userName

    =userName;

    id->passWord

    =passWord;

    EndDialog(hwnd,

    1);

    }

    break;

    case IDCANCEL:

    {

    EndDialog(hwnd,

    0);

    }

    break;

    default:

    break;

    }

    }

    void LoginDlg_OnClose(HWND hwnd)

    {

    EndDialog(hwnd, 0);

    }

    //文件LoginDlg.h内容如下:

    #ifndef _LOGINDLG_H

    #define _LOGINDLG_H

    #include

    struct LoginData

    {

    TCHAR* userName;

    TCHAR* passWord;

    };

    BOOL WINAPI LoginDlg_Proc(HWND hWnd, UINT uMsg, WPARAM wParam,

    LPARAM lParam);

    BOOL LoginDlg_OnInitDialog(HWND hwnd, HWND hwndFocus, LPARAM

    lParam);

    void LoginDlg_OnCommand(HWND hwnd, int id, HWND hwndCtl, UINT

    codeNotify);

    void LoginDlg_OnClose(HWND hwnd);

    #endif

    展开全文
  • VC/MFC 对话框 按钮加载PNG图片 透明
  • 对话框设置背景图片

    2017-06-09 15:11:18
    MFC替换背景图片
  • 之后,在对话框类添加消息OnEraseBkgnd(CDC* pDC) CDC MemDC; MemDC.CreateCompatibleDC(pDC); CBitmap Cbp; Cbp.LoadBitmap(IDB_BITMAP2); MemDC.SelectObject(&Cbp); BITMAP Bp; Cbp.GetBitmap(&a

    首先需要准备好背景图片,需要bmp格式的
    然后,导入bmp到工程,修改位图ID(右键位图->属性),最好预先把bmp图片存到工程目录下
    在这里插入图片描述
    之后,在对话框类添加消息OnEraseBkgnd(CDC* pDC)

    BOOL XXX::OnEraseBkgnd(CDC* pDC)
    {
    	// TODO: 在此添加消息处理程序代码和/或调用默认值
    	CDC MemDC;
    	MemDC.CreateCompatibleDC(pDC);
    
    	CBitmap Cbp;
    	Cbp.LoadBitmap(IDB_BITMAP2);
    	MemDC.SelectObject(&Cbp);
    
    	BITMAP Bp;
    	Cbp.GetBitmap(&Bp);
    
    	CRect rect;
    	GetClientRect(&rect);
    	pDC->StretchBlt(0, 0, rect.Width(), rect.Height(), &MemDC, 0, 0, Bp.bmWidth, Bp.bmHeight, SRCCOPY);
    
    	MemDC.DeleteDC();
    	return TRUE;
    }
    
    

    在这里插入图片描述

    展开全文
  • Java对话框上显示图片

    2021-03-04 09:24:26
    优点是可以节省系统资源, 显示图片的时候,不用做处理,缺点是需要了解ps的基本操作使用JDialog 自定义对话框. 优点 可以实现复杂的效果, 缺点,代码量比较多使用ImageIcon, Image 类 实现图片的缩放,. 优点: 纯java...
  • | 微信会话框细心的前端们会发现如果你微信里发一张和你当前背景一样的图片,那么微信的会给这张图片加边框,并且,右边的小三角是根据图片的位置截取的。很多前端会用backgroud或者clip-path来画,这样画出来的...
  • JavaScript中可以使用document.getElementsByTagName方法后去img...JavaScript实现点击图片弹出对话框:img {width: 500px;height: 300px;}//获取所有的img标签var imgObjs = document.getElementsByTagName("img"...
  • 对话框添加背景图片方法很多,此贴出两种很常见的方法。一种是通过读取位图资源显示位图(BitMap)step:1、创建内存设备下文;2、选择位图,将其装入内存设备下文;3、使用BitBlt()函数从内存设备上下文中把...
  • 不知道大家有没有注意到,微信里面,我们聊天的时候,发文字和发图片的时候,气泡对话框样式是有所不同的。有啥不同呢?且看下图。Paste_Image.png可以看到,发图片的时候,气泡对话框箭头的背景也是图片的一部分。...
  • VC++6.0中给对话框设置背景色或者背景图片
  • 对话框picture控件显示图片OpenCVcanny检测。 需要安装OpenCV库。
  • VC对话框加载图片

    2012-02-11 16:56:07
    相信每个学C++得都会觉得,对话框窗体太过于单调,加载图片让界面更吸引人是加载图片的目的,不是利用图片控件,而是背景图片
  • VC++对话框加背景图片设置方VC++对话框加背景图片设置方法法
  • 主要介绍了Cocos2d-x中实现弹出对话框示例,注意本文代码中的注释,本文同时给出了效果图,需要的朋友可以参考下
  • VC6.0对话框加背景图片的方法

    千次阅读 多人点赞 2015-02-05 16:06:30
    用VC6.0开发的程序,默认背景没有图片,不好看,如何加入图片呢? 加入位图图片(bmp)文件的方法...二、VC6.0插入位图文件:菜单Insert->Resource... 打开插入资源的对话框,选择Bitmap(位图),然后点击impo
  • Auto.js 自定义对话框

    2022-04-22 15:35:40
    view = ui.inflate( <vertical> <horizontal> <text text="账号"/> <input id="账号"w="*"/> </horizontal> <horizontal> <text text="密码"/>...input.
  • MFC 对话框添加背景图

    2022-06-25 20:37:33
    对话框添加背景图
  • QPalette的方法 #include < QApplication > #include < QtGui > int main( int argc, char * argv[]) { QApplication app(argc,argv); QFrame * frame = new QFrame;... } 参考 QT 对话框添加背景图片的方法
  • 对话框中有滚动条,利用对话框上加对话框,显示两张大图片
  • } 2019-11-28 09:43 会员卡号:123 电话号码:456 1: 2: 3: 图片 (4) 5.docx (6) $(function(){varcontentListHtml= " contentListHtml+= " + " + " } contentListHtml+= " ";varhtml=$("#content").html();for(vari=...
  • QFileDialog对话框

    2022-03-29 09:08:28
    关于option参数,QT提供了很多种: enum Option { //只在对话框中显示路径,默认是会选择文件和路径的。 ShowDirsOnly = 0x00000001, //默认是解析符号链接的,即返回的是符号链接指向的文件的路径。一般不会这...
  • MFC 给对话框添加图片背景

    千次阅读 2018-10-16 14:53:48
    windows开发当中做界面的主要技术之一就是使用MFC,通常我们看到的QQ,360,暴风影音这些漂亮的界面都可以用MFC来实现。今天我们来说一下如何用MFC美化对话框,默认情况下,对话框的背景如下: 那么,我们如何将...
  • 步骤一:把easysize.h拷贝到CMyDlg项目文件夹中,同时CMyDlg的.h文件和.cpp文件中加 入#include "easysize.h"; 步骤二:CMyDlg类的h文件中,加入DECLARE_EASYSIZE,注意结尾处不要“;”
  • 这里写自定义目录标题欢迎使用Markdown编辑器新的改变功能快捷键合理的创建标题,有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、...
  • MFC 对话框 添加 工具栏

    千次阅读 2021-10-15 12:48:56
    MFC 对话框 添加 工具栏 MFC中如何删除工具栏中多余的图标 刚学习MFC的时候,发现MFC资源视图里面编辑工具栏的时候,多余的图标没有删除键,其实只要把你要删除的图标按住并往外拖就可以了。 ...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 55,626
精华内容 22,250
关键字:

怎么在图片上加对话框