本人要做一个范围专题图,图标用一个小正方形。但设置属性后发现根本不对,颜色改变不了,图标形状改变不了,范围个数也改变不了,期待高手指教。本人没什么分,因此可能你的付出和回报会不相称,就当帮小弟一个忙吧。万分感谢!
下面是我的代码: ds.Themes.Add(miThemeRanged, 'Rxlv,'Rxlv',true);
//设置专题属性
thmRxlevS := ds.Themes.item[1];
thmRxlevS.Legend.Compact := true;
thmRxlevS.AutoRecompute := False;
thmRxlevS.ComputeTheme := false;
thmRxlevS.DataMax := 0;
thmRxlevS.DataMin := -120;
thmRxlevS.ThemeProperties.AllowEmptyRanges := true; //允许为空
thmRxlevS.ThemeProperties.NumRanges := 6; //范围数量
thmRxlevS.ThemeProperties.DistMethod := MiCustomRanges; //自定义范围
thmRxlevS.ThemeProperties.ApplyAttribute := miApplyAttributeAll; //应用到颜色、字体等所有
thmRxlevS.ThemeProperties.RangeCategories[1].Min := -90;
thmRxlevS.ThemeProperties.RangeCategories[1].Max := -70;
thmRxlevS.ThemeProperties.RangeCategories[1].Style.RegionPattern := 7;
thmRxlevS.ThemeProperties.RangeCategories[1].Style.RegionColor := miColorMagenta;
thmRxlevS.ThemeProperties.RangeCategories[2].Min := -70;
thmRxlevS.ThemeProperties.RangeCategories[2].Max := -60;
thmRxlevS.ThemeProperties.RangeCategories[2].Style.RegionPattern := 7;
thmRxlevS.ThemeProperties.RangeCategories[2].Style.RegionColor := miColorWhite;
thmRxlevS.ThemeProperties.RangeCategories[3].Min := -60;
thmRxlevS.ThemeProperties.RangeCategories[3].Max := -50;
thmRxlevS.ThemeProperties.RangeCategories[3].Style.RegionPattern := 7;
thmRxlevS.ThemeProperties.RangeCategories[3].Style.RegionColor := miColorRed;
thmRxlevS.ThemeProperties.RangeCategories[4].Min := -50;
thmRxlevS.ThemeProperties.RangeCategories[4].Max := -40;
thmRxlevS.ThemeProperties.RangeCategories[4].Style.RegionPattern := 7;
thmRxlevS.ThemeProperties.RangeCategories[4].Style.RegionColor := miColorGreen;
thmRxlevS.ThemeProperties.RangeCategories[5].Min := -40;
thmRxlevS.ThemeProperties.RangeCategories[5].Max := 0;
thmRxlevS.ThemeProperties.RangeCategories[5].Style.RegionPattern := 7; //miPattemCross
thmRxlevS.ThemeProperties.RangeCategories[5].Style.RegionColor := miColorBlue;
{
thmRxlevS.ThemeProperties.RangeCategories[6].Min := -120;
thmRxlevS.ThemeProperties.RangeCategories[6].Max := -90;
thmRxlevS.ThemeProperties.RangeCategories[6].Style.RegionColor := miColorBlack;
} //ThemeProperties.ColorMethod
// thmRxlevS.ThemeProperties.RoundRanges := true; //计算范围:控制范围的边界是否四舍五人
// thmRxlevS.ThemeProperties.RoundBy := 10; //计算范围:指定四舍五人范围的间隔
// thmRxlevS.ThemeProperties.SpreadBy
thmRxlevS.ThemeProperties.InflectRanges := true; //拐点颜色
thmRxlevS.ThemeProperties.InflectionRange := 2; //拐点第二个范围颜色
//thmRxlevS.ThemeProperties.InflectionColor
//thmRxlevS.ThemeProperties.ApplyAttribute := miApplyAttributeAll;
//显示
thmRxlevS.ComputeTheme := true;
thmRxlevS.AutoRecompute := true;
thmRxlevS.Visible := true;问题:1.设置了各范围的RegionColor,但系统还是用的红色到灰白的渐变。
2.设置了各范围的RegionPattern,但系统还是用的五角星。(我想用一个小方格)
3.设置了NumRanges := 6,但如设置6的属性后运行到 thmRxlevS.AutoRecompute := true;会出错,提示只能到5。
下面是我的代码: ds.Themes.Add(miThemeRanged, 'Rxlv,'Rxlv',true);
//设置专题属性
thmRxlevS := ds.Themes.item[1];
thmRxlevS.Legend.Compact := true;
thmRxlevS.AutoRecompute := False;
thmRxlevS.ComputeTheme := false;
thmRxlevS.DataMax := 0;
thmRxlevS.DataMin := -120;
thmRxlevS.ThemeProperties.AllowEmptyRanges := true; //允许为空
thmRxlevS.ThemeProperties.NumRanges := 6; //范围数量
thmRxlevS.ThemeProperties.DistMethod := MiCustomRanges; //自定义范围
thmRxlevS.ThemeProperties.ApplyAttribute := miApplyAttributeAll; //应用到颜色、字体等所有
thmRxlevS.ThemeProperties.RangeCategories[1].Min := -90;
thmRxlevS.ThemeProperties.RangeCategories[1].Max := -70;
thmRxlevS.ThemeProperties.RangeCategories[1].Style.RegionPattern := 7;
thmRxlevS.ThemeProperties.RangeCategories[1].Style.RegionColor := miColorMagenta;
thmRxlevS.ThemeProperties.RangeCategories[2].Min := -70;
thmRxlevS.ThemeProperties.RangeCategories[2].Max := -60;
thmRxlevS.ThemeProperties.RangeCategories[2].Style.RegionPattern := 7;
thmRxlevS.ThemeProperties.RangeCategories[2].Style.RegionColor := miColorWhite;
thmRxlevS.ThemeProperties.RangeCategories[3].Min := -60;
thmRxlevS.ThemeProperties.RangeCategories[3].Max := -50;
thmRxlevS.ThemeProperties.RangeCategories[3].Style.RegionPattern := 7;
thmRxlevS.ThemeProperties.RangeCategories[3].Style.RegionColor := miColorRed;
thmRxlevS.ThemeProperties.RangeCategories[4].Min := -50;
thmRxlevS.ThemeProperties.RangeCategories[4].Max := -40;
thmRxlevS.ThemeProperties.RangeCategories[4].Style.RegionPattern := 7;
thmRxlevS.ThemeProperties.RangeCategories[4].Style.RegionColor := miColorGreen;
thmRxlevS.ThemeProperties.RangeCategories[5].Min := -40;
thmRxlevS.ThemeProperties.RangeCategories[5].Max := 0;
thmRxlevS.ThemeProperties.RangeCategories[5].Style.RegionPattern := 7; //miPattemCross
thmRxlevS.ThemeProperties.RangeCategories[5].Style.RegionColor := miColorBlue;
{
thmRxlevS.ThemeProperties.RangeCategories[6].Min := -120;
thmRxlevS.ThemeProperties.RangeCategories[6].Max := -90;
thmRxlevS.ThemeProperties.RangeCategories[6].Style.RegionColor := miColorBlack;
} //ThemeProperties.ColorMethod
// thmRxlevS.ThemeProperties.RoundRanges := true; //计算范围:控制范围的边界是否四舍五人
// thmRxlevS.ThemeProperties.RoundBy := 10; //计算范围:指定四舍五人范围的间隔
// thmRxlevS.ThemeProperties.SpreadBy
thmRxlevS.ThemeProperties.InflectRanges := true; //拐点颜色
thmRxlevS.ThemeProperties.InflectionRange := 2; //拐点第二个范围颜色
//thmRxlevS.ThemeProperties.InflectionColor
//thmRxlevS.ThemeProperties.ApplyAttribute := miApplyAttributeAll;
//显示
thmRxlevS.ComputeTheme := true;
thmRxlevS.AutoRecompute := true;
thmRxlevS.Visible := true;问题:1.设置了各范围的RegionColor,但系统还是用的红色到灰白的渐变。
2.设置了各范围的RegionPattern,但系统还是用的五角星。(我想用一个小方格)
3.设置了NumRanges := 6,但如设置6的属性后运行到 thmRxlevS.AutoRecompute := true;会出错,提示只能到5。
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货