作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
如果我尝试使用 TRibbonCombobox 更改功能区样式,则会遇到访问冲突。
然后,我修改了 delphi 功能区演示以提供一个组合框方法来设置样式:
procedure TfrmRibbonDemo.RibbonComboBox1Change(Sender: TObject);
begin
if RibbonComboBox1.Text='Luna' then
Ribbon1.Style:=RibbonLunaStyle
else
Ribbon1.Style:=RibbonSilverStyle;
end;
date/time : 2009-10-02, 11:11:29, 843ms
operating system : Windows XP Service Pack 3 build 2600
physical memory : 583/2047 MB (free/total)
free disk space : (C:) 71.72 GB
display mode : 1280x1024, 32 bit
allocated memory : 23.59 MB
executable : RibbonDemo.exe
exec. date/time : 2009-10-02 11:11
compiled with : Delphi 2009
madExcept version : 3.0k
exception class : EAccessViolation
exception message : Access violation at address 0054767C in module 'RibbonDemo.exe'. Read of address 0000005F.
main thread ($ed0):
0054767c +054 RibbonDemo.exe RibbonActnCtrls TCustomRibbonComboBox.SetBounds
00546e52 +0a2 RibbonDemo.exe RibbonActnCtrls TRibbonComboControl.SetBounds
00516f39 +0f1 RibbonDemo.exe ActnMan TCustomActionControl.CalcBounds
0051853d +005 RibbonDemo.exe ActnCtrls TCustomButtonControl.CalcBounds
00546482 +00a RibbonDemo.exe RibbonActnCtrls TRibbonComboControl.CalcBounds
00516754 +030 RibbonDemo.exe ActnMan TCustomActionControl.SetSpacing
0051a243 +01b RibbonDemo.exe ActnCtrls TCustomActionToolBar.CreateControl
00557f16 +01a RibbonDemo.exe Ribbon TCustomActionControlBar.CreateControl
0056205a +006 RibbonDemo.exe Ribbon TCustomRibbonGroup.CreateControl
0051243f +087 RibbonDemo.exe ActnMan TCustomActionBar.CreateControls
00519b35 +005 RibbonDemo.exe ActnCtrls TCustomActionDockBar.CreateControls
0051a2c6 +022 RibbonDemo.exe ActnCtrls TCustomActionToolBar.CreateControls
00557fcb +027 RibbonDemo.exe Ribbon TCustomActionControlBar.CreateControls
00562075 +005 RibbonDemo.exe Ribbon TCustomRibbonGroup.CreateControls
00514542 +05e RibbonDemo.exe ActnMan TCustomActionBar.RecreateControls
0050e081 +04d RibbonDemo.exe ActnMan TCustomActionManager.SetStyle
0055dac3 +02f RibbonDemo.exe Ribbon TCustomRibbon.SetStyle
0056720c +04c RibbonDemo.exe RibbonDemoMainForm 387 +3 TfrmRibbonDemo.RibbonComboBox1Change
最佳答案
您正在修改功能区的样式,这也会修改触发事件的组合框。
为了使其工作,编程接口(interface)必须是“可重入的”,而功能区系统显然不是。
有几种可能的解决方案:
关于delphi - 如果我尝试使用 TRibbonCombobox 更改功能区样式,则访问冲突,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1511092/
如果我尝试使用 TRibbonCombobox 更改功能区样式,则会遇到访问冲突。 然后,我修改了 delphi 功能区演示以提供一个组合框方法来设置样式: 在功能区栏上添加了一个 TRibbonCo
我刚刚发现 Delphi TRibbonComboBox 没有项目索引,它应该。 我想至少为该单元在本地解决这个问题,我认为 Delphi 2009 添加了一种向外部类引入新方法而不必从类中下降的方法
我是一名优秀的程序员,十分优秀!