问几个实作win32控制台下文本编辑器的问题

luobonic 2007-12-07 06:10:03
最近在写控制台下的文本编辑器(要求仿真记事本),挺费劲。下面提几个问题,希望有经验的同志给解答一下。

1.如何操作cin、cout的缓冲区?

2.单线程中如何在语句外部结束该语句的运行?

3.怎样知道输入法是否开启?怎样获得输入法的缓冲区?

4.如何拦截一个input事件使输入法看不到该事件或是反过来使控制台input buff看不到该事件?
...全文
49 3 打赏 收藏 举报
写回复
3 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
ollydbg23 2007-12-18
楼主可以去codeproject.com里面搜索一下 console,上面有专门的文章讲这一些的内容,同时还有console的一些基本的库提供出来的,比如画窗口,画直线等等,我原来看到过。
  • 打赏
  • 举报
回复
luobonic 2007-12-08
1楼你这种话说了不如不说

来人看看下面这个

HWND hwnd = GetConsoleWindow();
if(!hwnd){
MyErrorExit("GetConsoleWindow");
}
HIMC himc = ImmGetContext(hwnd);
if(!himc){
cout<<GetLastError();//这里GetLastError()返回0
MyErrorExit("ImmGetContext");
}

环境是控制台下,为什么ImmGetContext()会失败?

同样的编写

HWND hwnd = GetConsoleWindow();
HDC hdc = GetWindowDC( hwnd );

hdc会成功。怎么回事?
  • 打赏
  • 举报
回复
Wolf0403 2007-12-07
cin cout 在这里没有用处。Win32 有专门的操作终端的API。
  • 打赏
  • 举报
回复
相关推荐
发帖
工具平台和程序库

2.4w+

社区成员

C/C++ 工具平台和程序库
社区管理员
  • 工具平台和程序库社区
加入社区
帖子事件
创建了帖子
2007-12-07 06:10
社区公告
暂无公告