小编Cor*_*ory的帖子

Win32 LB_GETTEXT返回垃圾

我有一个问题,这很可能是一个简单的问题,但对我来说,问题仍然存在问题.我在Win32/C++中使用Listbox,当从列表框中获取所选文本时,返回的字符串只是垃圾.它是结构或类似的句柄?

下面是代码和我得到的一个例子.

std::string Listbox::GetSelected() {
int index = -1;
int count = 0;

count = SendMessage(control, LB_GETSELCOUNT, 0, 0);

if(count > 0) {
    index = SendMessage(control, LB_GETSEL, 0, 0);
}

return GetString(index);
}


std::string Listbox::GetString(int index) {
int count = 0;
int length = 0;
char * text;

if(index >= 0) {
    count = GetItemCount();

    if(index < count) {
        length = SendMessage(control, LB_GETTEXTLEN, (WPARAM)index, 0);
        text = new char[length + 1];

        SendMessage(control, LB_GETTEXT, (WPARAM)index, (LPARAM)text);
    }
}
std::string s(text);
delete[] …
Run Code Online (Sandbox Code Playgroud)

c++ string winapi listbox

5
推荐指数
1
解决办法
5833
查看次数

文本编辑LinkedList vs行列表

我正在使用C#编写一个文本编辑器,我知道我只是在重新发明轮子,但这是一种学习经验和我想做的事情.

现在我有一个基本的文本文档使用类似于Gap Buffer的东西但是我必须更新我的行缓冲区以在每次对缓冲区进行编辑时保持每行的开始.

我正在寻找创建另一个文本文档,以便使用行列表进行测试并改为编辑每一行.

现在我的问题是使用LinkedList与标准List有什么好处?

.net c# text editor list

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

标签 统计

.net ×1

c# ×1

c++ ×1

editor ×1

list ×1

listbox ×1

string ×1

text ×1

winapi ×1