紧急求助:关于AlphaControls的问题

时间:2021-08-18 10:42:39
    现在在程序中使用AlphaControls来美化界面,碰到一个问题。两个窗体所有属性都一样,也是继承同一个父类,两个窗口都可以DevExpress的控件都能正常换肤,但是其中有一个窗口的自带控件不能换肤,如TButton,popmenu等。挺多窗体都是这个情况,就这个问题已经折腾了一天了,自己写个简单的测试程序倒都正常,总之现在是完全没头绪了,哪位大虾来救援一下啊

20 个解决方案

#1


每个窗体都放那两个AlphaControl控件!

#2


这个...不给力啊...

#3


如果是皮肤控件的话,就必须每个窗体都放的

#4


引用 3 楼  的回复:
如果是皮肤控件的话,就必须每个窗体都放的

不是啊,像devExpress就整个程序都可以用,有的窗口也是所有控件都换肤,就是想知道是不是我少做了什么设置才会有的有,有的没有。

#5


关注一下,看看是不是新知识点
紧急求助:关于AlphaControls的问题

#6


大哥,我连AlphaControls改变DevExpress皮肤都没成功,也在网上搜了不少资料,总之编绎总是报错,我用的版本是:
AlphaControls 7.65
ExpressQuantumGrid 6  
能否详细说明一下如何才能让AlphaControls支持cxgrid换肤?谢谢了!

#7


请问你的ExpressQuantumGrid的版本号是6.4 还是 6.5或者更高啊?

#8


不同的皮肤控件,其中一种无法完成对不同的换肤,我们以前用alpha和其他控件就遇到这种问题,最好只能用一种

#9


引用楼主  的回复:
    现在在程序中使用AlphaControls来美化界面,碰到一个问题。两个窗体所有属性都一样,也是继承同一个父类,两个窗口都可以DevExpress的控件都能正常换肤,但是其中有一个窗口的自带控件不能换肤,如TButton,popmenu等。挺多窗体都是这个情况,就这个问题已经折腾了一天了,自己写个简单的测试程序倒都正常,总之现在是完全没头绪了,哪位大虾来救援一下啊


楼主是怎么实现cxgrid支持AlphaControls皮肤的啊?

#10


在不能换肤的窗体放一个 sSkinProvider1 就行了.什么都不用改

#11


同上,我试了,一定成功,

#12


AlphaControls是支持DEV皮肤的,只是有些不支持,比如PNEL


不用担心,大部分的DEV控件都支持……

#13


引用 12 楼  的回复:
AlphaControls是支持DEV皮肤的,只是有些不支持,比如PNEL


不用担心,大部分的DEV控件都支持……


你的DEV是什么版本的啊????

#14


AlphaControl中有地方可以设置添加delphi自带控件的,自己摸索一下吧,
另外请楼主看一下AlphaControl是否还有以下这个Bug:把带皮肤的窗口运行后最小化,再打开,试几次,看看那皮肤显示是否有问题?

#15


引用 9 楼  的回复:
引用楼主  的回复:
现在在程序中使用AlphaControls来美化界面,碰到一个问题。两个窗体所有属性都一样,也是继承同一个父类,两个窗口都可以DevExpress的控件都能正常换肤,但是其中有一个窗口的自带控件不能换肤,如TButton,popmenu等。挺多窗体都是这个情况,就这个问题已经折腾了一天了,自己写个简单的测试程序倒都正常,总之现在是完全没头绪了,哪位大虾来救援一下啊

……


我也按网上弄了,没成功。

#16


就放一个skinmanger就行,设置下
1. 首先,必须把AlphaTools组件页的第一个组件(TsSkinManager)放到Delphi设计窗体上。

2. AlphaTools组件必须设置的属性一:SkinDirectory

    将其路径设置为AlphaControls安装目录下的Skins(安装时可能有多个Skin文件夹,如Skins、Skins1...可以把这些文件夹内的文件统一放在Skins文件夹下,因为都是皮肤文件)

3. AlphaTools组件必须设置的属性二:InternalSkins

    在此属性弹出的对话框中选择需要的皮肤(有预览效果),可以Add多个皮肤,选择多个皮肤就可以通过对SkinName属性的赋值而制作出更换皮肤的功能了。当然多选也会增加程序的大小,请斟酌使用。如果此属性不设置你也可以看到皮肤效果,但在别人的电脑上就不一定了,此属性的功能就是把皮肤文件编译进Delphi最后的可执行文件(.exe)中,所以此属性还是必须设置的。

4. AlphaTools组件必须设置的属性三:SkinName

    

#17


lenovo455说的对,我用的事AlphiControl但是我遇到了一个棘手的问题,我选择的皮肤没有编译进可执行文件,3中属性也设置。

#18


做一个DEOMO提交AC官方论坛就知道原因了

#19


http://mosir.org/html/y2012/dynamic-create-alphacontrols-in-the-delphi-project.html

#20


引用 19 楼 zhzhrony 的回复:
http://mosir.org/html/y2012/dynamic-create-alp hacontrols-in-the-delphi-project.html

刚刚看到的,能让AP支持第三方皮肤

#1


每个窗体都放那两个AlphaControl控件!

#2


这个...不给力啊...

#3


如果是皮肤控件的话,就必须每个窗体都放的

#4


引用 3 楼  的回复:
如果是皮肤控件的话,就必须每个窗体都放的

不是啊,像devExpress就整个程序都可以用,有的窗口也是所有控件都换肤,就是想知道是不是我少做了什么设置才会有的有,有的没有。

#5


关注一下,看看是不是新知识点
紧急求助:关于AlphaControls的问题

#6


大哥,我连AlphaControls改变DevExpress皮肤都没成功,也在网上搜了不少资料,总之编绎总是报错,我用的版本是:
AlphaControls 7.65
ExpressQuantumGrid 6  
能否详细说明一下如何才能让AlphaControls支持cxgrid换肤?谢谢了!

#7


请问你的ExpressQuantumGrid的版本号是6.4 还是 6.5或者更高啊?

#8


不同的皮肤控件,其中一种无法完成对不同的换肤,我们以前用alpha和其他控件就遇到这种问题,最好只能用一种

#9


引用楼主  的回复:
    现在在程序中使用AlphaControls来美化界面,碰到一个问题。两个窗体所有属性都一样,也是继承同一个父类,两个窗口都可以DevExpress的控件都能正常换肤,但是其中有一个窗口的自带控件不能换肤,如TButton,popmenu等。挺多窗体都是这个情况,就这个问题已经折腾了一天了,自己写个简单的测试程序倒都正常,总之现在是完全没头绪了,哪位大虾来救援一下啊


楼主是怎么实现cxgrid支持AlphaControls皮肤的啊?

#10


在不能换肤的窗体放一个 sSkinProvider1 就行了.什么都不用改

#11


同上,我试了,一定成功,

#12


AlphaControls是支持DEV皮肤的,只是有些不支持,比如PNEL


不用担心,大部分的DEV控件都支持……

#13


引用 12 楼  的回复:
AlphaControls是支持DEV皮肤的,只是有些不支持,比如PNEL


不用担心,大部分的DEV控件都支持……


你的DEV是什么版本的啊????

#14


AlphaControl中有地方可以设置添加delphi自带控件的,自己摸索一下吧,
另外请楼主看一下AlphaControl是否还有以下这个Bug:把带皮肤的窗口运行后最小化,再打开,试几次,看看那皮肤显示是否有问题?

#15


引用 9 楼  的回复:
引用楼主  的回复:
现在在程序中使用AlphaControls来美化界面,碰到一个问题。两个窗体所有属性都一样,也是继承同一个父类,两个窗口都可以DevExpress的控件都能正常换肤,但是其中有一个窗口的自带控件不能换肤,如TButton,popmenu等。挺多窗体都是这个情况,就这个问题已经折腾了一天了,自己写个简单的测试程序倒都正常,总之现在是完全没头绪了,哪位大虾来救援一下啊

……


我也按网上弄了,没成功。

#16


就放一个skinmanger就行,设置下
1. 首先,必须把AlphaTools组件页的第一个组件(TsSkinManager)放到Delphi设计窗体上。

2. AlphaTools组件必须设置的属性一:SkinDirectory

    将其路径设置为AlphaControls安装目录下的Skins(安装时可能有多个Skin文件夹,如Skins、Skins1...可以把这些文件夹内的文件统一放在Skins文件夹下,因为都是皮肤文件)

3. AlphaTools组件必须设置的属性二:InternalSkins

    在此属性弹出的对话框中选择需要的皮肤(有预览效果),可以Add多个皮肤,选择多个皮肤就可以通过对SkinName属性的赋值而制作出更换皮肤的功能了。当然多选也会增加程序的大小,请斟酌使用。如果此属性不设置你也可以看到皮肤效果,但在别人的电脑上就不一定了,此属性的功能就是把皮肤文件编译进Delphi最后的可执行文件(.exe)中,所以此属性还是必须设置的。

4. AlphaTools组件必须设置的属性三:SkinName

    

#17


lenovo455说的对,我用的事AlphiControl但是我遇到了一个棘手的问题,我选择的皮肤没有编译进可执行文件,3中属性也设置。

#18


做一个DEOMO提交AC官方论坛就知道原因了

#19


http://mosir.org/html/y2012/dynamic-create-alphacontrols-in-the-delphi-project.html

#20


引用 19 楼 zhzhrony 的回复:
http://mosir.org/html/y2012/dynamic-create-alp hacontrols-in-the-delphi-project.html

刚刚看到的,能让AP支持第三方皮肤

#21