为什么程序有时候没有反应?
写了个多显示器应用程序,窗口的配置信息写在INI文件中,程序可以进行窗口显示位置的设置,但是不知道为什么在设置的时候,程序经常没有反应,好像死掉一样。。。。。。
代码如下:
void TForm1::MultiMonitor(HWND Handle,String DClass,int Value,int Top,int Left,String opertype)
{
String Filename;
int Index,Top1,Left1,MoniCount;
int result;
Filename=ExtractFileDir(Application->ExeName)+"\\MultiMonitor.ini";
TIniFile *ini = new TIniFile(Filename);
//显示器数目
MoniCount=Screen->MonitorCount;
//保存窗口设置信息
if(opertype=="W")
{
if((Value>0)&&(Value<=MoniCount))
{
Left1 = Left - Monitor->Left;//本窗口调用此行没有问题,其他窗口调用出现地址错
Top1 = Top - Monitor->Top;//错误同上
Left1 = Left + Screen->Monitors[Value - 1]->Left;
Top1 = Top + Screen->Monitors[Value - 1]->Top;
try
{
ini->WriteString(DClass,"MonitorIndex",Value);
ini->WriteString(DClass,"Top",Top1);
ini->WriteString(DClass,"Left",Left1);
Application->MessageBoxA("ok","success" MB_OK);
SetWindowPos(Handle,HWND_TOPMOST,Top1,Left1,0,0,SWP_NOSIZE);
}
catch(...)
{
Application->MessageBoxA("error!","fail",MB_OK+16);
}
}
delete ini;
}
代码如下:
void TForm1::MultiMonitor(HWND Handle,String DClass,int Value,int Top,int Left,String opertype)
{
String Filename;
int Index,Top1,Left1,MoniCount;
int result;
Filename=ExtractFileDir(Application->ExeName)+"\\MultiMonitor.ini";
TIniFile *ini = new TIniFile(Filename);
//显示器数目
MoniCount=Screen->MonitorCount;
//保存窗口设置信息
if(opertype=="W")
{
if((Value>0)&&(Value<=MoniCount))
{
Left1 = Left - Monitor->Left;//本窗口调用此行没有问题,其他窗口调用出现地址错
Top1 = Top - Monitor->Top;//错误同上
Left1 = Left + Screen->Monitors[Value - 1]->Left;
Top1 = Top + Screen->Monitors[Value - 1]->Top;
try
{
ini->WriteString(DClass,"MonitorIndex",Value);
ini->WriteString(DClass,"Top",Top1);
ini->WriteString(DClass,"Left",Left1);
Application->MessageBoxA("ok","success" MB_OK);
SetWindowPos(Handle,HWND_TOPMOST,Top1,Left1,0,0,SWP_NOSIZE);
}
catch(...)
{
Application->MessageBoxA("error!","fail",MB_OK+16);
}
}
delete ini;
}
...全文
相关推荐
Linux系统下用户进程死循环问题解决方法.docx
首先,我们需要了解问题的现象:业务进程(用户态多线程程序)挂死,操作系统反应迟钝,系统日志没有任何异常。
为什么器件有时候会无缘无故地失效?
问题:为什么未遭受压力的器件有时候会无缘无故地失效? 答案: 有时候器件是"寿终正寝",有时候是存在压力但不明显。 器件的"寿终正寝"是一种源于物理或化学变化的累积性衰退效应。大家都知道,电解电
投影仪连接电脑以后为什么投影仪没有反应?最终版.pdf
投影仪连接电脑以后为什么投影仪没有反应?最终版.pdf
投影仪连接电脑以后为什么投影仪没有反应?
然而,在实际操作过程中,有时会出现投影仪连接电脑后没有反应的现象。本文将针对这一现象进行详细分析,并提供几种常见的解决方案。
联想usb驱动,联想插鼠标没有反应
解决联想电脑插鼠标键盘后没有反应,需要提前在bios开启虚拟鼠标


