懸停時,我試圖獲取對動態創建的LineSeries的引用。創建LinesSeries之后,我將信號處理程序附加到懸停的事件上。問題是:從下面的簡化示例中,當我將鼠標懸停在LineSeries上時,它會打印出最后添加的LineSeries的名稱。什么時候應該打印添加的每個LineSeries的系列名稱。例如,如果創建的3個LineSeries的名稱為[“ Line A”,“ Line B”,“ Line C”],則將鼠標懸停在每個LineSeries上時,應打印每個對應的名稱,而對所有3個打印機都打印“ Line C” LineSeries懸停的事件處理程序。我究竟做錯了什么?//dataset is a dictionary(QVariant) of items where each item is the name of the line seriesfor(var name in dataset) { var series = chart.createSeries(ChartView.SeriesTypeLine, name, xAxis, yAxis); series.name = name; series.hovered.connect( function (point,state){ if (state){ console.log(">>>"+ name); // <- should print the name of each series } });我覺得這與將name變量的當前值綁定到onhovered事件處理程序有關,但是我不確定如何執行此操作。我知道在普通的JS中它們會做類似的事情functionName.bind({... code ...},this);
將LineSeries懸停在上方時,獲取QML LineSeries的名稱
手掌心
2021-03-30 17:15:09