SDI问题3个:
建一个SDI程序,在客户区画图,怎样做离屏表面啊
怎样把主窗口标题里的后一段"- 无标题"去掉啊,将文档名设为NULL时,还会有" - ".
SDI程序里向注册表写东西的程序段在哪里?

解决方案 »

  1.   

    向注册表写东西的程序段在APP中的InitInstance里
      

  2.   

    SDI程序里向注册表写东西的程序段在哪里?你可以在CWinApp::InitInstance中写注册表。
      

  3.   

    to wltsui(你跳,我也跳!):
    程序标题我还是要的,用SetWindowText("")不行吧,我用CDocument::SetTitle(NULL)后程序标题就成了“程序名 -”了
      

  4.   

    to cainiaobus(jacky) :答对的给一定的分,其他人匀分剩下的啊
    我信誉值低是一次就从100扣到50的,发帖不给分好象不扣信誉值吧,老兄!!
    我的可用分有快9000了,不用收着干什么?to hua1111() & stonespace(stonespace) :
    自动生成的程序编译运行后,它就向注册表写东西了,能具体指明一下是哪几句,分别写什么内容么?
      

  5.   

    SetWindowText("我的程序"); :)
    什么叫 "离屏表面"?
      

  6.   

    BOOL CSDITESTApp::InitInstance()
    {
    SetRegistryKey(_T("Local AppWizard-Generated Applications"));
      

  7.   

    to everandforever(Forever) :
    可是可以,不过我想知道那个“ - ”是在哪里加上去的,
    离屏表面 是先把图象在内存里做好,再贴到屏幕上
      

  8.   

    在CWinApp::InitInstance中SetRegistryKey(_T("你的程序名"))会向注册表里写数据,一般用Wizard生成的程序都有,你可以从注册表中找到这个键值,也可以写入其他数据!
      

  9.   

    哦,
    那你在OnPaint里这样:
    CPaintDC dc(this); // device context for painting

    // TODO: Add your message handler code here
    CDC MemDC;
    CBitmap MemBitmap;
    MemDC.CreateCompatibleDC(NULL);
    CRect rcClient;
    GetClientRect(rcClient);
    MemBitmap.CreateCompatibleBitmap(&dc, rcClient.Width(), rcClient.Height());
    CBitmap* pOldBmp = MemDC.SelectObject(&MemBitmap);
    ....
    用MemDC画你的东东
    ...
    dc.BitBlt(rcClient.left, rcClient.top, rcClient.Width(), rcClient.Height(), &MemDC, 0, 0, SRCCOPY);
    MemDC.SelectObject(pOldBmp);
    MemBitmap.DeleteObject();
    MemDC.DeleteDC();
      

  10.   

    to zhp8001(zhp) :
    最近使用的文件是从哪里 写/读注册表 啊to lcc425(刘锡锡) :
    我试试先多谢各位关注!!
      

  11.   

    to lcc425(刘锡锡) :
    没有CBitmap::LoadBitmap 啊我的想法是load 3个bitmap,然后COPY 到一个离屏表面,再复制到窗口上
    该如何做啊
      

  12.   

    离屏表面 就是内存DC嘛.
    去GOOGLE搜一个叫CMEMDC的类, 用起来还可以.
      

  13.   

    现在问题是这样:
    1,load 3个bitmap,然后COPY 到一个离屏表面,再复制到窗口上该如何做?
    2,文档标题是在哪里加到主窗口标题栏里的?
    3,SDI程序里向注册表写东西的程序段都在哪里,具体是什么语句,特别是那个最近使用过的文件信息是在哪里 读/写 的分不够可另开贴加分!!
      

  14.   

    你可以用通常的畫bmp的技術,把bitmap畫到MemDC上去呀
    好想是
    CDC BitmapDC;
    BitmapDC.CreateCompatibleDC(&MemDC);
    CBitmap Bitmap;
    Bitmap.LoadBitmap(xxxx);
    BITMAP bmStruct;
    Bitmap.GetObject(sizeof(bmStruct), &bmStruct);
    CBitmap* oldBmp = BitmapDC.SelectObject(&Bitmap);
    MemDC.BitBlt(0,0, bmStruct.bmWidth, bmStruct.bmHeight, &BitmapDC, 0, 0, SRCCOPY);
    BitmapDC.SelectObject(oldBmp);
    BitmapDC.DeleteDC();我的QQ是22994895,歡迎加我,共同提高
      

  15.   

    to lcc425(刘锡锡) :
    谢谢,我加你了,我试试先
    现在问题是这样:
    1,load 3个bitmap,然后COPY 到一个离屏表面,再复制到窗口上该如何做?
    2,文档标题是在哪里加到主窗口标题栏里的?
    3,SDI程序里向注册表写东西的程序段都在哪里,具体是什么语句,特别是那个最近使用过的文件信息是在哪里 读/写 的分不够可另开贴加分!!    谁还有好主意吗
      

  16.   

    还是没人来,自己再UP一下现在问题是这样:
    1,load 3个bitmap,然后COPY 到一个离屏表面,再复制到窗口上该如何做?
    2,文档标题是在哪里加到主窗口标题栏里的?
    3,SDI程序里向注册表写东西的程序段都在哪里,具体是什么语句,特别是那个最近使用过的文件信息是在哪里 读/写 的分不够可另开贴加分!!    谁还有好主意吗
      

  17.   

    自己又来up 了  lcc425(刘锡锡) 也不来了,高手都睡了么?现在问题是这样:
    1,load 3个bitmap,然后COPY 到一个离屏表面,再复制到窗口上该如何做?
    2,文档标题是在哪里加到主窗口标题栏里的?
    3,SDI程序里向注册表写东西的程序段都在哪里,具体是什么语句,特别是那个最近使用过的文件信息是在哪里 读/写 的分不够可另开贴加分!!    谁还有好主意吗
      

  18.   

    1:请先告诉我你的bitmap是作为资源载入的还是存储在磁盘上的bmp文件;
    2:在CMainFrame::PreCreateWindow中加上一句:
        cs.style&=~FWS_ADDTOTITLE;
    3:是在CWinApp的InitInstance中,就是LoadStdProfileSettings()这个函数。你可以看到它的注释是这样的:Load standard INI file options (including MRU)。MRU就是最近使用过的文件列表。
      

  19.   

    多谢各位UP,结帖,请继续到
    http://www.csdn.net/expert/topic/1089/1089012.xmlUP 继续给分现在问题是这样:
    1,load 3个bitmap,然后COPY 到一个离屏表面,再复制到窗口上该如何做?
    2,文档标题是在哪里加到主窗口标题栏里的?
    3,SDI程序里向注册表写东西的程序段都在哪里,具体是什么语句,特别是那个最近使用过的文件信息是在哪里 读/写 的
    4,如何禁止改变窗口大小,就是鼠标放在窗口边缘处不变为箭头状