问题标签 [mfc]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
10 回答
6693 浏览

c# - .NET(或 MFC)的高速图形控制?

我需要编写一个数字示波器类型的应用程序。那里有很多很棒的静态图形控件,但我需要能够绘制 16 条轨迹的图形,每秒处理 4000 个样本。

有人知道.NET 的高速图形控制吗?我什至会使用 MFC,因为它可以封装到 .NET 控件中。

谢谢您的帮助!

0 投票
1 回答
4881 浏览

c++ - 以编程方式更改 Windows Mobile 6.1 主题

我试图找出在 windows mobile 6.1 中应用新的基于 tsk 的主题文件的正确程序。

我已经尝试关闭页面http://www.pocketpcdn.com/articles/changetodaytheme.html但这只会改变背景,而不是系统颜色,例如屏幕上的顶部和底部栏。

wceload.exe 似乎对某些 tsk 和部分其他 tsk 非常有效。

有谁知道更多关于 tsk 文件并在 Windows Mobile 6.1 中以编程方式应用它们的信息?

我的应用程序是一个开源应用程序,代码可用;可通过只读 svn 访问,请随时查看@google 代码

0 投票
3 回答
31643 浏览

mfc - CEdit控件最大长度?(可以显示的字符)

MFC 中 CEdit 控件中包含的文本字符串的最大长度是多少?尝试在字符 30001 之后添加字符时发出哔哔声,这是否记录在任何地方?我可以在 CEdit 中显示更长的文本吗?我应该使用其他控件吗?

正如下面的“Windows 程序员”所说,用户键入时的文本长度限制与我们使用 SetWindowText 以编程方式设置文本时的文本长度限制不同。任何地方都没有提到以编程方式设置文本的限制。用户输入的默认文本长度限制是错误的。(见下面我自己的帖子)。

我猜在我调用 pEdit->SetLimitText(0) 之后,编程和用户输入文本长度的限制都是 7FFFFFFE 字节。我对吗?

在 vista 中,将超过 40000 个字符的文本粘贴到 CEdit 中时,它会变得无响应。我之前是否调用过 SetLimitText(100000) 并不重要。

0 投票
3 回答
17795 浏览

mfc - CString 最大长度

CString 对象可以容纳的最大字符长度是多少?

0 投票
9 回答
2605 浏览

windows - 如何判断应用程序是否为 MFC 程序?

我有一个编译好的 GUI 应用程序。我需要了解它是否使用 MFC 库进行编程。Depends.exe 不返回任何对 MFC42*.dll 的依赖关系。是否有任何工具可以获取有关可执行文件的其他信息?(如果可能的话,不仅是库,还有正在使用的编译器等。)

0 投票
4 回答
5898 浏览

mfc - MFC 列表控件滚动显示额外的网格线

我在带有网格线的报表视图中使用 MFC 列表控件以模糊的电子表格方式显示数据。

有时当用户在控件中垂直滚动时,会绘制额外的网格线,这看起来很糟糕。

当使用滑块或鼠标滚轮滚动时不会发生这种情况,只有在使用滚动控件底部的小向下箭头按钮时才会发生这种情况。

当列表控制窗口的大小不是精确的偶数行时,似乎会发生这种情况,因此在底部可以看到部分行。

如果我调整列表控件的大小,使部分行不可见,问题就解决了。但是,当程序在另一台计算机上运行时,它会出现,大概是因为一行所占用的像素数发生了变化。

我假设这是屏幕分辨率、字体大小和“对话框单位”之间的交互。

我想我需要在创建控件时以编程方式强制它的大小。但是什么尺寸?

我曾尝试使用 ApproximateViewRect() 方法,但我无法让它工作。也许这种方法不知道报告视图?

我想,另一种方法是创建我自己的 CListCtrl 特化并覆盖任何进行滚动的方法。这似乎需要做很多工作。

此屏幕截图显示了一个密切相关的问题,即网格线丢失

替代文字

这是一个带有额外网格线的

替代文字

这两者之间以及它们与完美滚动的唯一区别是控件的垂直大小有几个像素不同。

0 投票
2 回答
993 浏览

c++ - 从 MFC Feature Pack 将注册表访问转换为 db 调用

我们可能会开始转换旧的 VS2003 MFC 项目以使用 MFC 功能包和 VS2008 提供的花哨的新功能。几个新的 UI 控件会非常好,除了一件事 - 它们会自动将信息保存到注册表。我的注册表没有问题,但是对于用户使用程序的多种环境,将用户数据保存到数据库要容易得多。

所以,我希望有一个主要的“访问注册表”功能可以重载以指向数据库。但简短的调查并没有发现任何问题。有没有其他人在做类似的事情上取得过成功?

0 投票
7 回答
10741 浏览

c++ - 设计字符串本地化的最佳方法

这是一个笼统的问题,欢迎发表意见。我一直在尝试想出一种好方法来设计用于 Windows MFC 应用程序和相关实用程序的字符串资源本地化。我的愿望清单是:

  • 必须在代码中保留字符串文字(而不是用宏 #define 资源 ID 替换),以便消息仍然可以内联读取
  • 必须允许本地化字符串资源(duh)
  • 不得施加额外的运行时环境限制(例如:对 .NET 的依赖等)
  • 对现有代码的干扰应该最小(修改越少越好)
  • 应该是可调试的
  • 应生成可用常用工具编辑的资源文件(即:常用格式)
  • 不应使用复制/粘贴注释块来保留代码中的文字字符串或任何其他可能导致去同步的内容
  • 允许静态(编译时)检查每个“注释”字符串是否在资源文件中会很好
  • 允许跨语言资源字符串池会很好(适用于各种语言的组件,例如:本机 C++ 和 .NET)

除了静态检查之外,我有一种方法可以在某种程度上满足我的所有愿望,但我不得不开发一些自定义代码来实现它(并且它有局限性)。我想知道是否有人以特别好的方式解决了这个问题。

编辑:我目前拥有的解决方案如下所示:

然后,我有一个自定义实用程序来解析“RESTRING”块中的字符串并将它们放入一个 .resx 文件中以进行本地化,并使用一个单独的 C# COM 对象从本地化资源文件中加载它们并返回。如果 C# 对象不可用(或无法加载),我会回退到代码中的字符串。该宏扩展为一个模板类,该类调用 COM 对象并进行格式化等。

无论如何,我认为添加我现在的参考资料会很有用。

0 投票
4 回答
3276 浏览

c++ - 虚拟列表控件 (MFC)

我正在使用列表控件来显示向量中元素的表示。当单击列表时,另一个控件会显示有关该元素的信息。元素的索引当前由它在控件中的索引确定,但是如果我希望对结果进行排序或过滤,这将不再有效。

有人告诉我可以使用虚拟列表控件,但是 MSDN 不是很友好,有人可以告诉我如何使用虚拟列表控件吗?

0 投票
4 回答
3702 浏览

c++ - 如何阻止我的 MFC 应用程序在启动时调用 OnFileNew()?

我使用 Visual Studio 的应用程序向导创建了一个具有多文档界面的骨架 MFC 程序。当我启动这个程序时,它会自动创建一个子框架,我不希望它这样做——我需要主框架的客户区为空,直到用户选择打开一个文件。

调试器告诉我,当应用程序类的 InitInstance() 函数调用 ProcessShellCommand() 时会创建一个 CChildFrame 对象,但是什么是我重写此行为的好入口点?