懸停時(shí),我試圖獲取對(duì)動(dòng)態(tài)創(chuàng)建的LineSeries的引用。創(chuàng)建LinesSeries之后,我將信號(hào)處理程序附加到懸停的事件上。問題是:從下面的簡化示例中,當(dāng)我將鼠標(biāo)懸停在LineSeries上時(shí),它會(huì)打印出最后添加的LineSeries的名稱。什么時(shí)候應(yīng)該打印添加的每個(gè)LineSeries的系列名稱。例如,如果創(chuàng)建的3個(gè)LineSeries的名稱為[“ Line A”,“ Line B”,“ Line C”],則將鼠標(biāo)懸停在每個(gè)LineSeries上時(shí),應(yīng)打印每個(gè)對(duì)應(yīng)的名稱,而對(duì)所有3個(gè)打印機(jī)都打印“ Line C” LineSeries懸停的事件處理程序。我究竟做錯(cuò)了什么?//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變量的當(dāng)前值綁定到onhovered事件處理程序有關(guān),但是我不確定如何執(zhí)行此操作。我知道在普通的JS中它們會(huì)做類似的事情functionName.bind({... code ...},this);
將LineSeries懸停在上方時(shí),獲取QML LineSeries的名稱
手掌心
2021-03-30 17:15:09