小编som*_*guy的帖子

如何在控制台程序中获得鼠标位置?

如何在Windows控制台程序中获取C++中的鼠标单击位置?(单击时返回鼠标位置的变量)

我想用简单的文本命令绘制菜单,所以当有人点击时,游戏会注册它并知道位置.我知道如何做我需要做的一切,除非在点击时获得鼠标位置.

c++ mouse windows-console

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

光标位置 c++ GetCursorPos 方法

在下面的代码中,我想要鼠标光标在屏幕上的位置,但是无论我将光标移动到哪里,我都会从下面的第二个星号或粗体(不确定)部分(无论光标在哪里)获得相同的输出:-1957298293 343277548。如果有人有更好的方法来获取光标位置或修复我的代码,请帮忙。(顺便说一句,“HANDLE csbiHandle; CONSOLE_SCREEN_BUFFER_INFO csbi;”不是必需的。它们在我之前的方法中也使用过,但也失败了)

#include <iostream>
#include <windows.h>
#include <cstdlib>
#include <cstdio>
#include <stdio.h>

#ifndef MOUSE_HWHEELED
#define MOUSE_HWHEELED 0x0008
#endif
using namespace std;

int main()
{
LPPOINT point;
HANDLE csbiHandle;
CONSOLE_SCREEN_BUFFER_INFO csbi;
int counter = 0;
DWORD cNumRead, i,fdwMode, fdwSaveOldMode;
INPUT_RECORD irInputBuffer[128];
HANDLE stdHandle;
stdHandle = GetStdHandle(STD_INPUT_HANDLE);
MOUSE_EVENT_RECORD mer;


cout << "|-------------|" << endl
     << "|      A      |" << endl
     << "|-------------|" << endl;
while(counter++<1000)
{
buttonpress:
ReadConsoleInput(stdHandle, irInputBuffer,128, &cNumRead);
**GetCursorPos(point);**
for(i=0; i<cNumRead; i++)
{
    switch(irInputBuffer[i].EventType)
    {
        case MOUSE_EVENT: …
Run Code Online (Sandbox Code Playgroud)

c++ winapi position cursor

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

用c ++处理对象

我被告知句柄是一种"无效"指针.但究竟什么"无效指针"意味着什么,它的目的是什么.还有什么"somehandle = GetStdHandle(STD_INPUT_HANDLE);呢?

c++ winapi handle void-pointers

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

在c ++中声明变量常量有什么意义

可能重复:
const(c ++)是可选的吗?

在c ++或任何编程语言中,声明变量const或常量有什么意义?我理解const的作用,但是声明一切不是常数并不安全,因为程序员不知道是否要更改变量吗?我只是没有看到const的目标.

c++ variables const

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

!在c ++中的含义(以下上下文)

我知道什么!= if if(x!= value){...},但在下面的上下文中它是什么意思:

 if (! ReadConsoleInput(
                hStdin,      // input buffer handle
                irInBuf,     // buffer to read into
                128,         // size of read buffer
                &cNumRead) ) // number of records read
            ErrorExit("ReadConsoleInput");
Run Code Online (Sandbox Code Playgroud)

要么

if (! SetConsoleMode(hStdin, fdwMode) )
        ErrorExit("SetConsoleMode");
Run Code Online (Sandbox Code Playgroud)

要么

 if (! GetConsoleMode(hStdin, &fdwSaveOldMode) )
        ErrorExit("GetConsoleMode");
Run Code Online (Sandbox Code Playgroud)

c++ operator-keyword

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

什么是C++中的复杂数据类型和Imaginary数据类型?

我知道数学世界中虚构和复杂的数字是什么,但在C++中,复杂和虚构的数据类型是什么.另外,我看到了_Imaginary和_Complex等数据类型.有什么区别,什么是复杂和虚构的数据类型?

c++ types complex-numbers

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