从右到左 TListView

2024-01-22

我正在对 tlistview 进行编程,以便它从右到左显示其列(以便正确显示希伯来语文本)。我在表单的创​​建方法中使用以下代码,其中“lv”是列表视图

 SetWindowLong (lv.Handle, GWL_EXSTYLE,
                GetWindowLong(lv.Handle, GWL_EXSTYLE)  or
                WS_EX_LAYOUTRTL or WS_EX_NOINHERITLAYOUT);

 lv.invalidate;   

虽然此代码使列表视图中的行正确显示,但标题行从左到右显示!列不匹配,并且每列的标题都是错误的。

有谁知道如何让标题行从右到左显示?

我使用的是 Delphi 7,但这应该不会有太大区别。

TIA, 诺姆


这是设置标题和行的完整代码:

procedure TForm1.FormCreate(Sender: TObject);
const
  LVM_FIRST = $1000;      // ListView messages
  LVM_GETHEADER = LVM_FIRST + 31;
var
  header: thandle;
begin
  header:= SendMessage (lv.Handle, LVM_GETHEADER, 0, 0);
  SetWindowLong (header, GWL_EXSTYLE,
                 GetWindowLong (header, GWL_EXSTYLE)  or
                 WS_EX_LAYOUTRTL or WS_EX_NOINHERITLAYOUT);

  SetWindowLong (lv.Handle, GWL_EXSTYLE,
                 GetWindowLong (lv.Handle, GWL_EXSTYLE)  or
                 WS_EX_LAYOUTRTL or WS_EX_NOINHERITLAYOUT);
  lv.invalidate;   // get the list view to display right to left
end;
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

从右到左 TListView 的相关文章

  • Delphi 应用程序被 Google Chrome 视为“危险”

    我经常用Delphi 2009制作数学软件 并将其发布在我的网站上 然而 去年左右 Google Chrome 开始认为我的一小部分 但数量不断增加 EXE 是 有害的 并且 Google Chrome 拒绝下载它们 例如 今天我编写了一个
  • Delphi 是否在构造对象之前分配变量?

    Delphi 是否在对象完全构造之前分配实例变量 换句话说 给定一个变量 var customer TCustomer nil 然后我们构造一个客户并将其分配给变量 customer TCustomer Create 有没有可能custom
  • 从不同的形式调用过程

    我正在使用 Lazarus 我有一个名为TForm1单元名称为 Unit 1 在这里我有一个名为mergeDATfile a shortint 这会产生一些东西 顺便说一句 我必须创建另一个名为TForm2里面有按钮 Button1 当它被
  • 构建机器是否需要单独的 Delphi XE4 许可证?

    用于通过以下方式构建应用程序dcc32在构建服务器上我可以使用 Delphi Trial 这种方法的许可证没有任何问题 现在 我将通过以下方式在 TeamCity 上构建 Delphi XE4 应用程序msbuild 我是否需要拥有构建机器
  • 使用 IOmniTaskControl/TOmniWorker 时等待 Invoke 完成

    我使用 TOmniWorker 创建了 IOmniTaskControl 以便我可以定期在特定线程上运行代码块 因此 我将根据需要在此 IOmniTaskControl 上调用 Invoke 当我这样做时 有时需要等待与该工作相关的执行完成
  • 如何使用 VCL 类的接口 - 第 2 部分 [关闭]

    很难说出这里问的是什么 这个问题是含糊的 模糊的 不完整的 过于宽泛的或修辞性的 无法以目前的形式得到合理的回答 如需帮助澄清此问题以便重新打开 访问帮助中心 help reopen questions 继续我之前关于使用 VCL 接口的调
  • 如何处理第三方库中的警告/提示?

    我们使用 FastReport 来生成报告 事实上 我们为访问源代码付费 我们目前使用的是FastReport的最新稳定版本 虽然它对于我们的生产来说足够稳定 但每当我编译时 我都会看到以下内容 dcc32 Hint fs iinirtti
  • TRichEdit和URL高亮问题

    我正在使用当前代码在 TRichEdit 上突出显示 URL procedure TForm1 WndProc var Message TMessage var p TENLink strURL string begin if Messag
  • 如何在显示表单之前强制将焦点集中在组件上

    我必须展示 与ShowModal 一个有很多的表格TEdit但我想把注意力集中在TEdit 但并不总是相同 具体取决于上下文 我不能使用SetFocus之前ShowModal 因为表单未激活 并使用该组件Name or Tag在我的应用程序
  • 在 Delphi 中,我的 DLL 中是否必须分配函数的返回 pchar

    我有一个 DLL 其中有一个返回 pchar 的函数 以避免必须使用 borlndmm 我最初所做的是将字符串转换为 pchar 并返回 Result pChar SomeFuncThatReturnsString 但 90 的情况下我都能
  • 以高效的方式将字符串转换为十六进制

    我开发了以下函数将字符串转换为十六进制值 function StrToHex const S String String const HexDigits array 0 15 of Char 0123456789ABCDEF var I I
  • 如何解决内存分段并强制FastMM释放内存给OS?

    注意 32 位应用程序不计划迁移到 64 位 我正在使用一个非常消耗内存的应用程序 并且几乎优化了与内存分配 取消分配相关的所有相关路径 应用程序本身没有内存泄漏 没有句柄泄漏 没有任何其他类型的泄漏 据我所知并经过测试 我无法触及的第 3
  • 如何安装DBMonitor

    这可能是一个非常简单的问题 但就是这样 我刚刚更新了 Firebird 的 DevArt DBExpress 驱动程序的许可证 帮助文件说我可以使用他们的免费软件 DBMonitor 应用程序 但由于我使用的是 D2006 所以我必须使用以
  • XE2 中的 COM 是否损坏?我该如何解决它?

    Update XE2 Update 2 修复了下述错误 下面的程序是从实际程序中截取的 在 XE2 中失败并出现异常 这是 2010 年的回归 我没有 XE 来测试 但我希望该程序在 XE 上运行良好 感谢 Primo 确认代码在 XE 上
  • 无法通过Delphi替换Word应用程序中的页脚文本

    我正在尝试替换页脚中的文本 我使用以下代码 通过它我可以替换正常内容 正文 但不能替换页脚 页眉中的内容 myWinWordApp CreateOLEObject Word Application myWinWordApp visible
  • 创建FileStream时如何处理异常

    我有一个这样的函数 我想重构它 function Myfunction sUrl sFile String Boolean var GetData TFileStream begin Result False if the line bel
  • Delphi错误数据集未处于插入或编辑模式

    客观的 单击 TRxDBCombo 上的按钮调用搜索框 从搜索框中选择记录时 结果将设置为 TComboEditBox 的字段值 并发布在 TRxMemoryData 数据集中 错误 第二次调用此函数时出现数据集未处于插入或编辑模式 TDB
  • delphi定时器比定时器服务中断例程更快

    大家好 我被要求为某人维护一个基于 Delphi 5 的程序 该程序使用一个计时器对象每 50 毫秒计时一次 并且在每次计时结束时运行单线程代码块 我只是想知道 如果执行这段代码所花费的时间比计时器滴答间隔长 会发生什么 这会很糟糕吗 例如
  • 递归遍历树视图中的节点?

    我有一个树视图 其中已经填充了另一个过程中的文件 文件夹 我想按照从上到下的确切顺序逐项迭代树视图中的项目 但是 与普通列表不同 我不能仅使用简单的for对此的声明 我必须进入每个节点等 我该怎么做呢 我希望有一种方法可以在不运行递归过程的
  • Delphi 7,加载PNG到TImage

    只是想加载 PNG 尝试使用适用于其他格式的 OleGraphic 来使用我的 LoadPic 但在 PNG 上失败 目标是将图像复制到隐藏位图 然后将其屏蔽并复制到可见的工作图像画布 如果 CopyRect 不这样做 请随意提出其他建议

随机推荐

  • 如何杀死扭曲的协议实例python

    我有一个使用 Twisted 用 python 编写的服务器应用程序 我想知道如何终止我的协议 bottalk 的实例 每次我获得新的客户端连接时 我都会在内存中看到该实例 print Factory clients 但是假设我想从服务器端
  • 如何将sql参数作为整数数据类型变量中的空值传递?

    如何将 sql 参数作为空值传递给整数数据类型变量 StockBO sBO new StockBO sBO Mode 2 if ddcmpanyname SelectedIndex 0 sBO Client id Convert ToInt
  • 如何检查引用的程序集在运行时是否可用?

    我正在创建一个简单的 独立的 net winforms 应用程序 它引用了程序集Microsoft SqlServer SqlWmiManagement Net Framework 4 的版本可能存在或不存在于客户端计算机上 如果该程序集不
  • 如何使用 es6 import 加载 emscripten 生成的模块?

    我正在尝试导入使用 emscripten 生成的模块作为 es6 模块 我正在尝试与基本示例 https kripken github io emscripten site docs porting connecting cpp and j
  • 跨多列排序 (Perl)

    对于以下代码 我将如何对多个列进行排序 目前 代码 1 得到一个 lista 中的文件数 directory2 使用正则表达式获取 fileName fileLocation and fileSize对于中的每个元素 list3 将 2 中
  • 数据注释验证属性中的 string.Format

    有没有办法使用格式化字符串而不是直接常量来设置数据注释消息 我需要像下面的代码一样设置必填字段 ErrorMessage 但它给了我一个错误 Required ErrorMessage string Format SystemMessage
  • Hyperledger Composer 点对点连接未建立

    我们使用 Hyperledger Composer 建立了一个业务网络 并通过创建对等点来创建参与者卡 当我们在导入参与者卡后尝试将对等方连接到本地的另一台计算机时 我收到以下错误 错误 尝试登录并获取用户上下文时出错 错误 尝试时出错 注
  • 运行 GO111MODULE=on go install 。 ./cmd/... 在云初始化中

    我有一个使用 cloud init 部署的 bash 脚本 我的 bash 脚本包含以下部分代码 GO111MODULE on go install cmd 当直接在已部署服务器的终端中运行我的 bash 脚本时 它按预期工作 但是当我在云
  • 我应该如何管理基于 Xml 的文档的不同不兼容格式

    我有一个应用程序 它以基于 Xml 的格式保存文档 例如 Word 文档 目前 从 xsd 文件生成的 C 类用于读取 写入文档格式 一切都很好 直到最近我不得不更改以下格式 该文件 我担心的是我的应用程序的未来版本的向后兼容性need能够
  • Ionic:如何不堆叠多个 toast 通知?

    我得到了以下 Ionic 代码片段 用于在工业应用程序中显示警报 错误 showError message string let toast this toastController create message message posit
  • Phpunit骨架生成器找不到扩展类

    我有一个基于 Zend Framework 的应用程序 我尝试使用 phpunit 生成测试用例的框架 Phpunit 似乎无法找到我尝试生成的类的父类 phpunit skeleton test Default Model Person
  • TFS 构建期间未找到程序集

    遇到问题的是项目在本地编译得很好 但 TFS 构建报告找不到程序集 日志文件将显示 2 gt C 程序文件 x86 MSBuild 12 0 bin amd64 Microsoft Common CurrentVersion targets
  • 如何将列聚合到 JSON 数组中?

    如何转换如下数据以便将数据存储在 ElasticSearch 中 这是一个 bean 数据集 我将按产品将其聚合到 JSON 数组中 List
  • 使用 MSBuild 从命令行生成用于 ClickOnce 部署的 setup.exe

    我有一个 MSBuild 脚本 用于构建 Windows 窗体应用程序 生成应用程序清单并对其进行签名 然后生成部署清单 该脚本还为我生成publish htm 文件 现在我需要生成 setup exe 文件 到目前为止我还无法弄清楚 VS
  • 如何在Python中使用带有字符异常的多行DOTALL

    我必须在 python 中找到多线模式 所以我使用正则表达式中的 DOTALL 但它发现的内容超出了我的需要 样本文件 if condition 1 some text some text if condition 1 condition
  • 我什么时候应该使用 $wpdb->prepare(如果有的话)?

    我很难弄清楚是否应该使用 wpdb gt prepare我在 WordPress 中进行数据库查询 以防止 SQL 注入等情况 The wpdb 法典 https codex wordpress org Class Reference wp
  • 如何从私有工作组队列接收消息

    我在远程计算机上有一个私有队列 每个人和匿名登录都可以完全访问 尝试接收时会产生以下代码并出错 var qpath FormatName DIRECT TCP xx xx xx xx PRIVATE QueueName var q new
  • 使用 postgresql 查询结果进行字符串替换

    我有一个查询 它总是只返回一个元素作为结果 我想将此查询的结果附加到一个字符串中 我可以使用该字符串进行进一步处理 Example select id from ids where some condition 我想将此 id 附加到字符串
  • simple_form 与 bootstrap 3 的集成

    我已将 bootstrap 更新到版本 3 除了 simple form gem 生成的表单之外 一切正常 我不知道如何将这两者整合在一起 我在 github 项目存储库中也找不到任何有用的建议 那么有人能为我提供解决方案吗 这里有一篇博客
  • 从右到左 TListView

    我正在对 tlistview 进行编程 以便它从右到左显示其列 以便正确显示希伯来语文本 我在表单的创 建方法中使用以下代码 其中 lv 是列表视图 SetWindowLong lv Handle GWL EXSTYLE GetWindow