问题列表 - 第18245页

Win32多行编辑控件在SetWindowText()上丢失回车符

在我的C++ Win32 GUI应用程序中,我有一个对话框,其中包含一个从对话框模板创建的编辑控件:

EDITTEXT   IDC_EDIT_Id, X, Y, W, H,
    ES_MULTILINE | ES_AUTOVSCROLL | ES_WANTRETURN | WS_VSCROLL
Run Code Online (Sandbox Code Playgroud)

每当我用回车手动输入多行文本并调用GetWindowText()检索到的文本时,就会按预期分成带有CRLF字符的行.但是,当我尝试将相同的文本放回编辑控件时SetWindowText(),控件将文本显示为单个字符串.

为什么会出现这种行为,我该如何解决这个问题呢?

windows winapi controls visual-c++

4
推荐指数
1
解决办法
4848
查看次数

访问单个结构成员是否将整个结构体拉入缓存?

我一直在阅读Ulrich Drepper的文章," 每个程序员应该知道的关于内存的内容 "和第3.3.2"缓存效果的测量"(页面中间),它给我的印象是访问结构的任何成员会导致整个结构被拉入CPU缓存.

它是否正确?如果是这样,硬件如何知道这些结构的布局?或者编译器生成的代码是否以某种方式强制加载整个结构?

或者使用较大结构的速度是否主要是由于结构体分布在更多内存页面引起的TLB未命中?

Drepper使用的示例结构是:

  struct l {
    struct l *n;
    long int pad[NPAD];
  };
Run Code Online (Sandbox Code Playgroud)

其中sizeof(l)NPAD等于0,7,15或31 确定,导致相隔0,56,120和248字节的结构,并假设高速缓存行为64字节和4k页.

随着结构的增长,迭代遍历链表会变得非常慢,即使实际上没有其他指针被访问.

c linux memory caching

7
推荐指数
2
解决办法
982
查看次数

如何在不迭代到最后的情况下放弃IEnumerator?

考虑以下代码,第一个演示当我们完成对IEnumerable字符串的迭代时执行"清理".第二遍是让我悲伤的原因.我需要能够在到达结束之前放弃IEnumerable,然后执行清理代码.但是如果你运行这个,你会发现在第二次通过时,清理工作永远不会发生.

放弃像这样的IEnumerable的首选方法是什么?

static void Main(string[] args)
{
    // first pass
    foreach (String color in readColors())
        Console.WriteLine(color);

    // second pass
    IEnumerator<string> reader = readColors().GetEnumerator();
    if (reader.MoveNext())
    {
        Console.WriteLine(reader.Current);
        reader.Dispose();
    }
}
static IEnumerable<string> readColors()
{
    string[] colors = { "red", "green", "blue" };
    for (int i = 0; i < colors.Length; i++)
        yield return colors[i];

    Console.WriteLine("Cleanup goes here");
}
Run Code Online (Sandbox Code Playgroud)

c#

7
推荐指数
1
解决办法
348
查看次数

在ASP.NET MVC中创建报表的最佳方法

在ASP.NET MVC和MS sql server中构建我的应用程序后,我现在想要显示一些有关我的数据的统计信息.

创建HTML报告的最简单方法是什么?这些报告是由跨越多个表的数据构建的?(一旦选择了字段,它们将是静态的,意味着需要单个视图)

我虽然它们应该是一个向导的行,让你将表中的字段拖到表单并生成背后的逻辑......

asp.net-mvc report

7
推荐指数
1
解决办法
7807
查看次数

Flex 4中的mx/fx/s对象类型有什么区别?

Flex4提供以下命名空间:

xmlns:fx="http://ns.adobe.com/mxml/2009" 
xmlns:s="library://ns.adobe.com/flex/spark" 
xmlns:mx="library://ns.adobe.com/flex/halo"
Run Code Online (Sandbox Code Playgroud)

有什么不同?哪个命名空间提供哪些功能 我在哪里可以找到相关信息?

apache-flex namespaces flex4 halo flex-spark

3
推荐指数
1
解决办法
5725
查看次数

如何在MATLAB中使用在其中绘制的线创建图像矩阵?

我想绘制一条从一个明确定义的点到另一个定义点的线,然后将其转换为图像矩阵,在其上使用高斯滤波器进行平滑.为此,我使用函数linegetframe绘制一条线并捕获图像中的图形窗口,但getframe速度非常慢且不太可靠.我注意到它在计算机锁定时没有捕获任何内容,并且out of memory在170次执行后我收到错误.

我的问题是:

  • getframe我可以使用替代品吗?
  • 有没有办法创建图像矩阵并直接在其中绘制线条?

这是一个最小的代码示例:

figure1=line([30 35] ,[200 60]);
F= getframe;
hsize=40; sigma=20;
h = fspecial('gaussian',hsize,sigma); 
filteredImg = imfilter(double(F.cdata), h,256);
imshow(uint8(filteredImg));
Run Code Online (Sandbox Code Playgroud)

[更新]

高性能Mark的想法linspace看起来非常有前景,但我如何访问用linspace?计算的矩阵坐标?我尝试了以下代码,但它不起作用,因为我认为它应该.我认为这是一个非常简单和基本的MATLAB的东西,但我无法绕过它:

matrix=zeros(200,60);
diagonal=round([linspace(30,200,numSteps); linspace(35,60,numSteps)]);
matrix(diagonal(1,:), diagonal(2,:))=1;
imshow(matrix);
Run Code Online (Sandbox Code Playgroud)

matlab plot image-processing matrix line

9
推荐指数
2
解决办法
2万
查看次数

二进制文件和跨平台兼容性

我编写了一个C++库,将我的数据(自定义结构的集合等)保存到二进制文件中.我目前在Windows(XP)机器上本地使用(即创建使用)文件.为简单起见,让我们将库分为两部分:编写器(创建文件)和读者使用者(只是从文件中读取数据).

最近,我还想在我的Linux机器上使用(即读取)我在XP机器上创建的数据文件.我必须在这个阶段指出两台机器都是PC(因此具有相同的endianess等).

我可以构建一个阅读器(并为Linux编译[确切地说是Ubuntu 9.10]),因为我是图书馆创建者.我的问题,在我踏上这条道路(构建读者等)之前是:

假设我已经成功构建了适用于Linux的阅读器,

我可以简单地将在Windows(XP)机器上创建的文件复制到Linux(Ubuntu 9.10)机器并使用Linux阅读器成功读取复制的文件吗?

c c++ filesystems ubuntu windows-xp

6
推荐指数
1
解决办法
2615
查看次数

C中char类型的负值的重要性

  1. 'C'中的字符用于表示字符.
  2. 代表所有代码页中字符的数字总是正数.

签名字符有什么用?字符中包含的负值仅用作较小的整数数据类型中的整数值而不是int和short?他们没有其他解释吗?(像表示字符的字符中的正值)

c character chars

6
推荐指数
2
解决办法
1万
查看次数

包和MXML组件

我怎么说MXML组件在某些包中?好吧,它在一个不同的文件夹中...我知道怎么做ActionScript ...但是当我在MXML中做的时候我没有明确地声明包,因为我不知道怎么做,当我把它调用到我的应用程序时它说明了这一点

元素"package:Component"的前缀"package"未绑定.

apache-flex mxml packages

3
推荐指数
1
解决办法
1676
查看次数

android服务说明

我是一个新的Android开发人员,我目前正在制作一个与SIP通信的应用程序.我想设置一个后台任务来完成所有与SIP相关的任务,如果可能的话,让它在手机启动时开始.我目前的想法是创建一个Service并让它从设备启动开始,问题是有两种Services使用AIDL,一种是以a开头的Intent.

我想将一些参数传递给我的服务,让它独立于我的主要运行,Activity并能够通知我的主要Activity传入消息.任何人都可以告诉我该怎么做并指出任何好的教程我能理解两者之间的区别Service吗?我读过一本关于Android开发者的书和一些教程,但他们更加困惑我.

service android

0
推荐指数
1
解决办法
4815
查看次数