草庐IT

windows - 如何隐藏 MS Access 父 MDI 窗口,但仍然显示 Windows 任务栏引用?

我在VBA中使用了MSAccess中的User32库来隐藏MDI窗口:GlobalConstSW_HIDE=0GlobalConstSW_SHOWNORMAL=1GlobalConstSW_SHOWMINIMIZED=2GlobalConstSW_SHOWMAXIMIZED=3'WindowsUser32LibraryreferencetomodifythewindowbyoneoftheabovecommandsPrivateDeclareFunctionapiShowWindowLib"User32"Alias"ShowWindow"_(ByValhWndAsLong,ByValn

windows - 如何设置MDI客户端的大小和位置?

似乎大小(x,y)和位置(nWidth,nHeight)参数都是使用CreateWindow时忽略.例如:CreateWindow(L"MDICLIENT",L"",WS_CHILD|WS_CLIPCHILDREN|WS_VISIBLE,150,10,400,300,hWnd,NULL,hInst,(LPVOID)&ccs);它始终与左上角对齐并采用父级的大小,如下所示。(我们可以看到差异,因为窗口背景是COLOR_WINDOW)。 最佳答案 MDICLIENT的坐标对启动没有影响。相反,您必须按如下方式处理WM_SIZE中的客户端

c# - 作为 MDI 子窗口的程序

有没有办法将一个程序用作MDI子窗口。我正在考虑拥有一个主MDI父窗口,它可以有多个子窗口,其中一些将是自己的程序(.exe文件)。蒂姆 最佳答案 实际上有一种非常简单的方法可以做到这一点。首先,您需要在表单中添加一个面板。该面板将用于“托管”应用程序。接下来,您需要将“System.Runtime.InteropServices”和“System.Diagnostics”命名空间添加到您的命名空间中:锐化usingSystem.Diagnostics;usingSystem.Runtime.InteropServices;现在,我

windows - MS Word 是 MDI 或 SDI

我对MSWord是MDI或SDI应用程序感到困惑。查看该应用程序,我确实相信它是一个SDI应用程序,但有些人强烈“相信”它是MDI的一个例子。在Windows中使用任务管理器后,“应用程序”选项卡会列出当前打开的所有文档实例。但是,进程选项卡中只有一个进程。因为所有的文档都有相同的进程,所以让我觉得它是一个MDI。但与此同时,应用程序选项卡列出了所有打开的文档,这让我认为它是一个SDI。大家对此有何看法?请给出您宝贵而详细的回答。 最佳答案 如果取消选中“选项”中的在任务栏中显示所有文档,Word是一个经典的MDI应用程序(甚至是W

windows - 是否可以启动一个新进程并将其主窗口设置为我的 MDI 应用程序的子窗口?

是否可以启动一个新进程并将其主窗口设置为我的MDI应用程序的子窗口?场景是:我有一个MDI应用程序,我想将Adob​​eAcrobat作为我的MDI应用程序的子窗口启动。 最佳答案 理论上,我相信可以使用SetParent.但是,在实践中,这可能比您预期的要困难一些。此外,您还需要同步样式等。只是一个想法,如果你想嵌入AcrobatReader(不是完整的Acrobat),你可以通过嵌入一个webcontrol并在其中使用acrobatreader插件来更容易地做到这一点......以下是一些使这项工作(至少是部分工作)的人的例子:

c# - 如何判断一个窗口是否为MDI窗口?

我想有一些user32.dll调用可以用来验证窗口是否是MDI窗口,比如使用DefMDIChildProc并查看它是否失败,但我想知道这是否有任何限制,或者是否有更好的方法去做这个?检查Parent就足够了吗?为了简单起见,我最终希望的是一种IsMDI(IntPtrptr)调用......想法?有什么建议吗? 最佳答案 我已经弄清楚了(在pinvoke.net的帮助下)-您可以根据扩展的Windows样式找到答案:publicstaticboolIsMDI(IntPtrhwnd){WINDOWINFOinfo=newWINDOWIN

windows - 为什么我的 MDI 子窗体不显示阴影?

在我的应用程序中,当我将一个窗体作为我的主要MDI父窗体的子窗体时,子窗体停止在窗体后面显示Windows7默认阴影效果。如何让子窗体显示阴影?Formobj=Application.OpenForms["My_form"];if(obj!=null){obj.Focus();}else{My_formc=newMy_form();c.MdiParent=this;c.Show();} 最佳答案 这是正常的,完全是设计使然。MDIchildwindowsarenottop-levelwindows,butratheraspecial

c# - 如何避免或限制 MDI 子窗体菜单条与 MDI 父窗体菜单条合并?

是否可以这样做,如果可以,怎么做?我的应用程序的屏幕截图 最佳答案 您需要设置AllowMergepropertyMenuStrip的false。这将使子窗体上的MenuStrip保持原样,防止它与MDI父窗体合并。 关于c#-如何避免或限制MDI子窗体菜单条与MDI父窗体菜单条合并?,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/questions/19087687/

windows - 您如何允许 MDI 应用程序中的窗口离开其带有 Win32 的父容器?

我有一个MDI应用程序。我想在子窗口的非客户端标题栏上添加一个图标,允许窗口独立于父MDI容器float,允许用户使用子窗口并将它们任意放置在桌面周围,在MDI之外窗口。我已经看到它完成了,所以我知道这是可能的,但我很难弄清楚如何完成它。我使用的是WTL(Windows模板库),但我将其标记为MFC和Win32,因为我相信基本原则是相同的,而且人们可能了解WindowsAPI的各个方面。 最佳答案 我已经有一段时间没有这样做了,但我认为调用SetParent(your_hwnd,0)让窗口脱离其父窗口就足够了。消息传递会稍微改变,因

c# - 如何从 MDI 父窗体的 MDIClient 组件中删除 3d 边框(凹陷)?

我正在VS2010(.NET4.0)中开发WinFormsMDI应用程序,我只是讨厌MDI父窗体中的3D边框。关于如何移除它(使其平坦或完全没有边框)有什么想法吗? 最佳答案 我知道这是一篇旧文章,但我花了一些时间和精力从互联网上的片段中找出3D边框的东西(因为我也需要它),包括:ElementsfromJacobSlusser'spageatcodeproject.com(Accessed1stAug'12)所以这里是:usingSystem;usingSystem.Collections.Generic;usingSystem.