草庐IT

win-listview

全部标签

c++ - Q3ListView 是否无法从 Qt 后备存储中注销或代码错误?

我有以下用例(实际上没有意义,因为它是从现实生活中的工作示例中最小化的,但我认为它在技术上仍然是正确的):classDialog:publicQDialog{public:Dialog(QWidget*parent):QDialog(parent){newQ3ListView(this);//thiswillcrash//newQWidget(this);//thiswon'tcrash}};根据添加到Dialog的内容,程序是否会在删除Dialog实例时崩溃(如代码片段中的注释所示),但仅当主窗口的标志已被修改。下面是MainWindow类的代码,它使用了Dialog:classMa

c++ - 从重定向的 STDOUT 读取 Unicode(C++、Win32 API、Qt)

我有一个动态加载插件DLL的C++应用程序。DLL通过std::cout和std::wcout发送文本输出。基于Qt的UI必须抓取DLL的所有文本输出并显示它。由于运行时库的差异,DLL可能具有不同的cout/wcout实例,因此使用流缓冲区替换的方法并不完全有效。因此,我应用了Windows特定的STDOUT重定向,如下所示:StreamReader::StreamReader(QObject*parent):QThread(parent){//void}voidStreamReader::cleanUp(){//restorestdoutSetStdHandle(STD_OUTPU

c++ - 异常被 Win32 消息调度程序捕获的问题

这是一个非常低级的问题,但也许这里有人有一些见解......我遇到了一个问题,未处理的SEH异常(例如访问冲突)似乎在Win32消息调度级别被捕获,而不是终止程序。我找到了以下引用博客,它解释了问题,但仅在WM_TIMER消息的上下文中:http://bugswar.blogspot.com/2010/07/why-its-not-crashing.html我在Win2008R2和“正常”消息(例如:WM_COMMAND等)上遇到了问题。我怀疑可能是Windows试图通过屏蔽异常来“帮助”,但我希望它出错;“继续并忽略”行为通常会导致应用程序出现问题。我意识到我可以尝试将每个函数包装在

c++ - 是否可以修改显示的原点? (win32)

我有许多无法修改的应用程序(无源代码),它们被硬编码为在0,0处绘制。通常这不是问题,但是出现了一个新项目(kiosk),我需要在这些应用程序的外部画一个边界。我正在寻找一种方法来更改显示范围:X:0to1200Y:0to900类似于:X:-100to1100Y:-100to800我在MSDN上看到了几个函数,如SetViewportExtEx、SetWorldTransform,它们符合需要,但是如果我正确理解它们,它们就不会在系统范围内进行更改。它们仅适用于当前进程。我正在用C++编程,但如果注册表/控制面板/等中有设置也可以。有没有人以前做过这样的事情?编辑1:窗口位置硬编码为0

从ListView检查项目更新数据库

Hellos的家伙。我正在尝试从listView中仅检查/选择的项目更新数据库,因此,这是我的代码无法正常工作,因为更新所有记录。我尝试了一切...请任何帮助都很棒!PrivateSubButton2_Click(senderAsObject,eAsEventArgs)HandlesButton2.ClickDimconstringAsString="Provider=Microsoft.ACE.OLEDB.12.0;DataSource=C:\Users\bnp\Desktop\Servicios1.mdb"DimmyconnectionAsNewOleDbConnection(constr

c++ - Win32 GDI 画一个圆?

我正在尝试画一个圆,我目前正在使用Ellipse()函数。我有起始鼠标坐标-x1和y1以及结束坐标x2和y2。如您所见,我强制y2(temp_shape.bottom)=y1+(x2-x1)。这不能按预期工作。我知道计算是完全错误的,但有什么想法是正确的吗?下面的代码。caseWM_PAINT:{hdc=BeginPaint(hWnd,&ps);//TODO:Addanydrawingcodehere...RECTrect;GetClientRect(hWnd,&rect);HDCbackbuffDC=CreateCompatibleDC(hdc);HBITMAPbackbuffer=

c++ - Win32 - Midi 循环与 MCISendString

我正在制作一款游戏,我正在使用midi文件作为背景音乐。这是我目前使用的代码:voidGame::play_music(){//Startthemusic:if(map.levelnumber%2==0){mciSendString(L"openMUSIC01.MIDtypesequenceraliasMusic1",NULL,0,NULL);mciSendString(L"playMusic1",NULL,0,NULL);playing="Music1";}else{mciSendString(L"openMUSIC02.MIDtypesequenceraliasMusic2",NU

c++ - Qt 5.4 应用程序可以在 pre win7 中调试吗

当我发现选择Chromium而不是WebKit对QtWebEngine的影响时,我感到非常惊讶。Chromium需要VS2013,因此我无法在(例如)我的VistaProfessional上进行开发和测试。VS2013不支持XP或Vista。另外,安装QtCreator3.3.0,我没有得到可运行的工具包(是MinGW,直到Qt5.3)。Help\AboutQtCreator...框显示BasedonQt5.4.0(MSVC2010,32bit)我不明白...似乎我唯一的选择是坚持使用Qt5.3。或者在放弃Qt作为可行的可移植平台之前,我可以尝试一些技巧?

c++ - 正确处理listview中可编辑子项的子项编辑(或取消子项编辑)

简介:我正在尝试使用可编辑子项实现ListView控件。对于项目/子项目的就地编辑,我使用编辑控件。我相信我已经设法正确编码将编辑控件放置在项目/子项目之上。问题:我不知道应该在哪些事件上结束/取消子项编辑(隐藏编辑控件、设置子项文本等)以及我应该如何做。为了澄清,我说的是用户完成/取消就地编辑的那一刻。此时不再需要编辑控件,所以我应该隐藏它(我不喜欢每次都重新创建它;我相信创建一次然后在需要时显示/隐藏它效率更高)。我的目标是Properties窗口在VisualStudio中的行为(请参阅附图以准确查看我所指的窗口)。当用户按下ESC键/点击另一个窗口/点击滚动条等时,我想以与此窗

c++ - long long VS 2013 Release Win 64 错误结果

当我在VS2013/Win64/Release中尝试这段代码时,我得到了错误的结果:它打印出11。在Visual2013Win32/Debug/Release&Win64/Debug中,结果是正确的。VisualStudio项目是使用默认参数创建的。#includeintmain(intargc,char*argv[]){longlonginc[2]={0,1};longlongdinc[2]={0,0};dinc[0]=inc[1]-inc[0];dinc[1]=inc[0]-inc[1];//expected-1==>display1for(inti=0;i如何解释这个结果?