Yuki I have the following code which changes the background gradient color depending on whether a buy or sell signal is given.
if(StrToNum(NumToStr(BuySignal))) bgColor = ColorRGB(0,66, 2); else bgColor = ColorRGB(66,2, 0); SetChartBkGradientFill( colorBlack, bgColor); Perhaps you can change this to meet your needs Best Regards Rick Osborn ________________________________ From: Yuki Taga <[email protected]> To: [email protected] Sent: Sat, June 12, 2010 1:24:58 AM Subject: [amibroker] impenetrable AFL Impenetrable! (At least to me.) xcolor = IIf(TSI >= SigLine, SetChartBkGradientFill( ParamColor("BgTop", ColorRGB( 172,172,172 )), ParamColor("BgBottom", ColorRGB( 172,172,172 ))), SetChartBkGradientFill( ParamColor("BgTop", ColorRGB(140,140,140)), ParamColor("BgBottom", ColorRGB(140,140,140)))); SetChartBkColor(SelectedValue(xcolor)); I tried that line above as SetChartBkGradientFill(SelectedValue(xcolor)); but that produced a syntax error. I think you can see what I'm trying to do here. The idea is simple: change the background gradient depending on a true/false result. The gradients in this example are not the gradients I would actually use (in fact they are not gradients at all, as your intelligent eyes will quickly have seen). They are just test code to see if I can even make it work. I cannot. For one thing, the gradient does not change no matter the selected value. It's static. For another thing, the margin background goes to black, a hideous (although somewhat foreseen) result. Okay, what am I doing wrong, and where did I miss this in the docs? And what, if anything, can I do about this margin result? The only way I can change the *entire* background color is by not using a gradient??? (Using SetChartBkColor) How sad that would be! I can make that work, at least. But not with a gradient. Anything is possible in Amibroker, right? Wrong? Thanks, Yuki
