草庐IT

drag-sort-listview

全部标签

windows - 从另一个进程读取 ListView 数据

这是一种GUI自动化应用程序,我想通过它从另一个进程的ListView中读取数据。ListView类是SysListView32并且具有以下样式设置LVS_OWNERDRAWFIXED通常我可以使用以下过程从ListView中读取文本在其他进程的内存空间分配内存将消息发送到ListView以使用在该进程中分配的缓冲区指针读取文本读取缓冲区当listview不是ownerdrawn时它工作正常,但在这种情况下,listview似乎是由所有者绘制的,即listitem没有数据。是否可以通过我讨论过的方法或任何方法或通过Hookapi或任何方法从这样的ListView中读取文本?

c++ - 使用 ListView_HitTest 检查具有扩展样式 LVS_EX_FULLROWSELECT 的 LVHT_ONITEMSTATEICON 标志的虚拟 ListView 不需要的复选框行为

我正在使用一个虚拟的ListView控件,我正在尝试让复选框正常工作。在NM_CLICK中,我的代码将点击点从NM_LISTVIEW结构复制到LVHITTESTINFOhitInfo.pt。然后我将hitInfo传递给ListView_HitTest并且如果hitInfo.flags&LVHT_ONITEMSTATICON->ToggleCheckBox...在我将扩展样式LVS_EX_FULLROWSELECT添加到ListView之前,我的代码运行良好(仅在复选框本身被单击时选中/取消选中)。现在,如果我选择一行(在项目的任何一点),它将切换复选框。有什么方法可以在不删除LVS_E

c++ - 如何正确更改 ListView 控件中的焦点项?

如果我想更改ListView控件中的焦点项,我执行以下操作:BOOLsetListFocusItem(CListCtrl*pList,intnIndex){return!!pList->SetItemState(nInd,LVIS_FOCUSED,LVIS_FOCUSED);}你是这样做的吗?因为焦点本身会发生变化,但这会产生一个问题。例如,如果列表有100个项目并且焦点在项目1上。如果我这样调用我的方法setListFocusItem(99);焦点将更改为项目99,但是如果我转移-单击项目90,我希望列表中的项目90到99被选中。但是列表选择了1到90项。所以很明显,我的setLis

windows - 如何在 UWP 的 ListView 中更改默认选择的聚焦背景颜色?

我正在开发Windows通用应用程序。我想更改我的ListView选择的背景颜色。系统默认选择的背景颜色是蓝色,我需要灰色。我使用数据模板将数据绑定(bind)到ListView。代码数据模板ListView:我还放了一些屏幕截图,以便您轻松理解。图片 最佳答案 将此模板添加到ListViewItem的样式中:这里你可以删除或修改你想要的,看起来你想将SelectedBackground颜色更改为DarkGrey。 关于windows-如何在UWP的ListView中更改默认选择的聚焦背

python +win32 : detect window drag

有没有办法检测不属于我的应用程序的窗口何时被使用python/pywin32拖到窗口中?我想对其进行设置,以便当我拖动一个标题与桌面边缘附近的图案匹配的窗口时,它会在松开鼠标时捕捉到边缘。我可以编写代码,以便在松开鼠标时将所有具有该标题的窗口捕捉到桌面,但我只想移动被拖动的特定窗口。 最佳答案 到目前为止,我看到的唯一可能的解决方案是使用SetWindowsHookEx。Pywin32没有接口(interface),所以我想我必须做这样的事情:编写一个C扩展模块。它有一个类似setCallback的函数,当拖动事件发生时,它需要一个

c# - 以 xamarin 形式将 base64 字符串绑定(bind)到 ListView

首先,我是Xamarin.Form的新手。我正在尝试从Google获得最好的结果,但我什至无法搜索到很多功能。我正在创建Xamarin.Form应用。在该应用程序中,我将图像存储为sqlserver中的base64string格式,我在sqlserver中的数据类型是varchar(Max)。我的问题是,如何将base64字符串转换为图像并将图像绑定(bind)到ListView。Listview代码:C#代码:PublicasyncTaskloadDeveloperList(){try{ListemployeeDetail=newList();HttpClientclient=new

c - 在 Windows 中区分 cmd line args 和 drag-onto-icon args 的方法?

我有一个用C(MinGW)编写的WindowsGUI应用程序,我想让该应用程序执行不同的任务,具体取决于它是通过带有文件名参数的命令行启动的,还是通过将文件拖到应用程序图标上启动的。现在的样子,下面的函数不区分两者:intargc;LPWSTR*argv=CommandLineToArgvW(GetCommandLineW(),&argc);当一个文件被拖到应用程序的图标上时,它假定它是通过命令行启动的。这个问题是我需要额外的参数,这些参数必须通过命令行传递才能做任何有用的事情。文件名本身不够,所以应用程序只是退出,因为它没有足够的信息来继续。我希望用户能够将文件拖到应用程序图标上,然

windows - 如何关闭 Delphi ListView 上的热跟踪?

我在表单上有一个简单的ListView,我想完全关闭热跟踪。HotTracking属性设置为False,但在鼠标光标下的项目上仍然绘制了一个蓝色矩形...德尔福XE3、Windows7 最佳答案 该矩形是资源管理器主题的一部分。资源管理器主题是可选的,ListView类选择使用它并通过调用SetWindowTheme将其强加到它的CreateWnd中。您可以通过调用SetWindowTheme撤消更改来覆盖该行为。使用插入器类的示例:usesVcl.ComCtrls,Winapi.UxTheme;typeTListView=clas

C++ ListView 隐藏项

我已经创建了非常标准的ListView。RECTrec;GetClientRect(hwnd,&rec);ListView=CreateWindow(WC_LISTVIEW,(LPCSTR)L"",(WS_CHILD|WS_VISIBLE|LVS_REPORT),0,0,rec.right,rec.bottom-23,hwnd,(HMENU)8553,GetModuleHandle(NULL),NULL);SendMessage(ListView,LVM_SETEXTENDEDLISTVIEWSTYLE,0,LVS_EX_FULLROWSELECT|LVS_EX_CHECKBOXES)

c++ - ListView控件中的LVN_ITEMCHANGED优化

我目前正在使用以下代码根据在ListView控件中选择的行来更新对话框中的控件:voidCMyDialog::OnLvnItemchangedListTasks(NMHDR*pNMHDR,LRESULT*pResult){LPNMLISTVIEWpNMLV=reinterpret_cast(pNMHDR);//TODO:AddyourcontrolnotificationhandlercodehereASSERT(pNMLV);if(pNMLV->uChanged&LVIF_STATE){if((pNMLV->uNewState^pNMLV->uOldState)&LVIS_SELEC