Jump to content

Изменение настроек оси TUniChart в Runtime


andreyka

Recommended Posts

Здравствуйте.

Возникла проблема с установкой подписи, минимального и максимального значений оси

В релизе

uc_trendmain.Axes.AxisA.Title := new_name;
uc_trendmain.Axes.AxisA.Min :=min_value;
uc_trendmain.Axes.AxisA.Max :=max_value;

не срабатывало, поэтому пришлось делать так:

IUniJSInterface(uc_trendmain).JSCall('chart.axes.items[0].setTitle', [new_name]);
IUniJSInterface(uc_trendmain).JSAssign('chart.axes.items[0].minimum', [mi_value]);
IUniJSInterface(uc_trendmain).JSAssign('chart.axes.items[0].maximum', [max_value]);

При попытке компиляции проекта на beta 1.10.0.1452 первый вариант так и не работает, а второй начал выдавать ошибку: Cannot read property '0' of undefined

Ну и вопрос: как можно в текущей beta устанавливать такие настройки?

 

И еще оди вопрос в дополнение: можно ли отобразить на графике сетку?

Link to comment
Share on other sites

Здравствуйте,

 

а второй начал выдавать ошибку: Cannot read property '0' of undefined

uchart.JSInterface.JSCall('chart.axes[0].setTitle', ['New left axis caption']);
uchart.JSInterface.JSCall('chart.axes[1].setTitle', ['New bottom axis caption']);

И потом вызвать redraw:

uchart.JSInterface.JSCall('chart.redraw', []);
  • Upvote 1
Link to comment
Share on other sites

И еще оди вопрос в дополнение: можно ли отобразить на графике сетку?

 

Один из возможных вариантов решения,

 

FormReady:

procedure TMainForm.UniFormReady(Sender: TObject);
begin
  with uchart.JSInterface do
  begin
    JSCall('chart.axes[0].setGrid', [True]);
    JSCall('chart.axes[1].setGrid', [True]);
  end;
end;
  • Upvote 1
Link to comment
Share on other sites

Please sign in to comment

You will be able to leave a comment after signing in



Sign In Now
×
×
  • Create New...