草庐IT

其他控件

全部标签

windows - 让我的 MFC 对话框在其控件之前接收击键事件(MFC/Win32 相当于 WinForms "KeyPreview")

我有一个包含十几个按钮、单选按钮和只读编辑控件的MFC对话框。我想知道用户何时在该对话框中按下Ctrl+V,而不管哪个控件具有焦点。如果这是C#,我可以设置KeyPreview属性,我的表单将在各个控件之前接收所有击键-但我如何在MFC对话框中执行此操作? 最佳答案 JTeagle是对的。您应该覆盖PreTranslateMessage()。//ExampleBOOLCDlgFoo::PreTranslateMessage(MSG*pMsg){//Addyourspecializedcodehereand/orcallthebase

windows - 没有管理员权限的用户的独立 Mercurial(或其他 SCM)客户端?

我没有我的电脑的管理员权限,但想使用Mercurial(不同的SCM也可以)来跟踪更改。我安装了Mercurial,但无法安装TortoiseHg,因为我没有管理员权限。是否有不需要(直接或通过依赖项)管理员权限的替代方案?附言我正在寻找一个独立的应用程序(即,我不想要像Eclipse这样的IDE的插件)。 最佳答案 我真的发现我从来没有使用GUI来处理Mercurial,即使我有一个像样的可用(即TortoiseHg)——命令行界面非常好,你可以启用graphlog扩展来查看ascii-终端中存储库的艺术图。

windows - 加载依赖于其他 dll 的 dll ..?

当我在运行时加载一些dll(我们称之为Lib1.dll)但Lib1.dll也依赖于Lib2.dll但Lib2.dll不存在时会发生什么? 最佳答案 如果缺少依赖项,程序将不会运行:尝试访问DLL时将抛出异常/错误。 关于windows-加载依赖于其他dll的dll..?,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/questions/2104260/

windows - Windows 窗体中的 ComboBox Datagridview 控件

我在Windows窗体上有一个数据GridView。它有列[EmployeeNumber、EmployeeName和EmployeeDepartment]。我希望能够直接在网格中编辑值,但我希望EmployeeDepartment成为一个组合框列,这样在单元格编辑时,一个组合框会显示员工部门的可用选项。有没有人能够实现这样的功能? 最佳答案 DataGridView实际上有一个DataGridViewComboBoxColumn。如果您转到列设计器并添加一个新列,您会注意到您可以选择几种类型之一。它的行为与您所描述的完全一样-在编辑

C# 从字符串值创建控件

您好,我可以从字符串值创建一个控件吗喜欢来自"System.Windows.Forms.TextBox"创建控件 最佳答案 你可以使用反射:vartextBoxType=typeof(Control).Assembly.GetType("System.Windows.Forms.TextBox",true);vartextBox=Activator.CreateInstance(textBoxType); 关于C#从字符串值创建控件,我们在StackOverflow上找到一个类似的问题:

c# - 单击 NotifyIcon 切换表单可见性并在其他地方单击时隐藏它

我有一个应用程序在系统托盘中。我想让它在用户点击notifyIcon时可见,如果它还不可见的话。如果它已经可见,则应将其隐藏。此外,当用户单击除表单之外的任何其他地方时,表单应该隐藏(如果它可见)。我的代码是这样的:protectedoverridevoidOnDeactivated(EventArgse){showForm(false);}publicvoidshowForm(boolshow){if(show){Show();Activate();WindowState=FormWindowState.Normal;}else{Hide();WindowState=FormWind

python - 如何为 Windows 框编写安装程序(安装 python、python 模块和其他依赖项)?

我对这个主题一无所知,但我需要有关创建安装程序的最佳工具或方法的建议,该安装程序安装python、一些自定义python模块、一些其他python模块(如PIL)和一些EXE依赖项,所有这些都依赖于网络存储库,在Windows机器上。存储库中有python(msi文件)、PIL(exe文件)、自定义python模块(pyc文件)和两个Windows可执行文件(以及exe文件和一个zip文件)的安装程序。欢迎任何建议。 最佳答案 您可以使用任何安装程序执行此操作。每个依赖安装程序都有一个静默安装选项,因此您的安装程序只需要以正确的顺序

c - Win32 公共(public)控件初始化会破坏自定义控件吗?

所以我正在尝试在Win32中初始化公共(public)控件和视觉样式。我构建了一个包含我编写的一些自定义控件的DLL,以及一个包含GUI应用程序的EXE。通常,职责分离似乎是我的DLL不应该担心我们是否启用窗口样式。它应该只生成自定义控件并将它们公开给依赖的EXE。然后EXE可以决定它是否需要视觉样式,而DLL一点也不知道。问题是这样的:我让我的DLL在进程附加上的DllMain中注册它的窗口类。但是,如果我在EXE中调用InitCommonControlsEx,自定义控件中的按钮和诸如此类的东西不会显示,因为自定义控件在EXE可以初始化公共(public)控件之前注册。为了证明这一点

c++ - 如何在进程间通信中获取其他端点的进程ID

使用Win32C++API,我想知道哪个IPCmethod,允许多进程通信中的任何端点获取与之通信的进程的PID或HANDLE。换句话说,如果进程A从进程B收到一条消息:如果B没有(直接)在发送的消息中给出任何提示,A可以知道B发送了消息吗?如何?要求:B的PID不能在IPC消息中发送给A。通信的目的是简单的远程过程调用。但是,我不希望远程系统/主机上的进程调用本地主机上运行的进程提供的过程。我当然找到了RPCdocumentationonMSDN.但是,我想知道是否有比RPC更好的方法来实现我想要的。或者,如果您认为RPC是可行的方法,能否告诉我原因以及您是否知道除MSDN之外还有其

c# - 控件移动后 Windows 窗体 MouseEnter 不触发

我想在鼠标进入时为PictureBox的BackColor属性着色。当MouseEnter事件触发时,我将BackColor变为黄色,并在MouseLeave中重置为透明。然后当我点击一个PictureBox时,我改变了它的位置,所以我也有一个Move事件将它重置为透明。问题是,一旦我移动它,我需要用鼠标输入PictureBox两次以触发MouseEnter事件!这是一个非常图形化的问题,所以我上传了一点video向您展示正在发生的事情,它肯定会比我更好地解释我的问题。我尝试了另一种方法,不是在MouseEnter中而是在MouseHover中更改颜色。在这种情况下,它运行良好,除了我