首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C++ Builder >

非MDI程序子窗体不显示在任务栏只能另外调用程序?解决思路

2012-02-29 
非MDI程序子窗体不显示在任务栏只能另外调用程序?1.让子窗体不会随着主窗体最小化2.子窗体不能在任务栏有

非MDI程序子窗体不显示在任务栏只能另外调用程序?
1.让子窗体不会随着主窗体最小化
2.子窗体不能在任务栏有显示

这2个任意一个都好解决,放到一起似乎就不好解决了..

解决了第一个,第二个没办法处理..

头疼...难道只有我再创建一个程序,通过主程序调用子程序?

这样好麻烦啊..不可控因素太多了..

具体的问题描述在这楼

http://topic.csdn.net/u/20100226/15/f29d8af0-0a24-45fa-80da-4ef4697680ec.html?34167

(其实就是想做一个桌面日历类似的东西,让一些东西能固定在桌面上)

[解决办法]
我用BCB6在win7下测试实现了你的目的。

1、新建一个工程:创建两个窗口,为了测试省事,两个窗口让应用程序自动创建
2、在Form1上放一个按钮
全部代码如下:

C/C++ code
//---------------------------------------#include <vcl.h>#pragma hdrstop#include "Unit1.h"#include "assert.h"#include "Unit2.h"//---------------------------------------#pragma package(smart_init)#pragma resource "*.dfm"TForm1 *Form1;HWND   GetDesktopListViewHandle(void)    {    HWND   hResult;    hResult=::FindWindow("ProgMan",NULL);    hResult=::GetWindow(hResult,GW_CHILD);    hResult=::GetWindow(hResult,GW_CHILD);    return   hResult;    }//---------------------------------------__fastcall TForm1::TForm1(TComponent* Owner)    : TForm(Owner){}//---------------------------------------void __fastcall TForm1::Button1Click(TObject *Sender){    ::SetParent(Form2->Handle,GetDesktopListViewHandle());    Form2->Show();}//--------------------------------------- 

热点排行