16,473
社区成员
发帖
与我相关
我的任务
分享
void CBallsRaceView::OnLButtonDown(UINT nFlags, CPoint point)
{
this->SetTimer(1,10,NULL);
int i=0;
for(i=0;i<5;i++)
{
ResumeThread(_hThread[i]);
}
int CBallsRaceView::OnCreate(LPCREATESTRUCT lpCreateStruct)
{
if (CView::OnCreate(lpCreateStruct) == -1)
return -1;
int i = 0;
DWORD ThreadID[5];
static DWORD ThreadArg[5] = {HIGHEST_THREAD,ABOVE_AVE_THREAD,NORMAL_THREAD,
BELOW_AVE_THEAD,LOWEST_THREAD};
for(i=0;i<5;i++) //这一部分使用来创建线程的,控制小求的运动
{
_hThread[i] = ::CreateThread(NULL,0,
(LPTHREAD_START_ROUTINE)ThreadProc,
&ThreadArg[i],
CREATE_SUSPENDED,
&ThreadID[i]);
}
for(i=0;i<5;i++)
{
_hEvent[i] = ::CreateEvent(NULL,TRUE,TRUE,NULL);
}
SetThreadPriority(_hThread[0],THREAD_PRIORITY_HIGHEST);
SetThreadPriority(_hThread[1],THREAD_PRIORITY_ABOVE_NORMAL);
SetThreadPriority(_hThread[2],THREAD_PRIORITY_NORMAL);
SetThreadPriority(_hThread[3],THREAD_PRIORITY_BELOW_NORMAL);
SetThreadPriority(_hThread[4],THREAD_PRIORITY_LOWEST);
// TODO: Add your specialized creation code here
PIXELFORMATDESCRIPTOR pixelDesc;//下面着部分是OpenGL画图的,大家不用管
pixelDesc.nSize = sizeof(PIXELFORMATDESCRIPTOR);
pixelDesc.nVersion = 1;
pixelDesc.dwFlags = PFD_DRAW_TO_WINDOW |PFD_SUPPORT_OPENGL |PFD_DOUBLEBUFFER |PFD_STEREO_DONTCARE;
pixelDesc.iPixelType = PFD_TYPE_RGBA;
pixelDesc.cColorBits = 32;
pixelDesc.cRedBits = 8;
pixelDesc.cRedShift = 16;
pixelDesc.cGreenBits = 8;
pixelDesc.cGreenShift = 8;
pixelDesc.cBlueBits = 8;
pixelDesc.cBlueShift = 0;
pixelDesc.cAlphaBits = 0;
pixelDesc.cAlphaShift = 0;
pixelDesc.cAccumBits = 64;
pixelDesc.cAccumRedBits = 16;
pixelDesc.cAccumGreenBits = 16;
pixelDesc.cAccumBlueBits = 16;
pixelDesc.cAccumAlphaBits = 0;
pixelDesc.cDepthBits = 32;
pixelDesc.cStencilBits = 8;
pixelDesc.cAuxBuffers = 0;
pixelDesc.iLayerType = PFD_MAIN_PLANE;
pixelDesc.bReserved = 0;
pixelDesc.dwLayerMask = 0;
pixelDesc.dwVisibleMask = 0;
pixelDesc.dwDamageMask = 0;
HWND hWnd = GetSafeHwnd();
HDC hDC = ::GetDC(hWnd);
m_GLPixelIndex = ChoosePixelFormat( hDC, &pixelDesc);
if (SetPixelFormat( hDC, m_GLPixelIndex, &pixelDesc)==FALSE)
{
return -1;
}
m_hGLContext = wglCreateContext(hDC);
// this->SetTimer(1,50,NULL);
//mouse_event(MOUSEEVENTF_LEFTDOWN||MOUSEEVENTF_LEFTUP,20000,20000,0,0);
mouse_event(MOUSEEVENTF_LEFTDOWN,10000,20000,0,0); //这一块是我根据大家的意见该的,
mouse_event(MOUSEEVENTF_LEFTUP,10000,20000,0,0);
// ::SetCursorPos(30000,30000);
// Sleep(100);
// mouse_event(MOUSEEVENTF_LEFTDOWN,10000,10000,0,0);
// Sleep(10);
// mouse_event(MOUSEEVENTF_LEFTUP,10000,10000,0,0);
//Sleep(10);
return 0;
}