例如在dll中循环得到一组数据:
for(i=0;i<100;i++)
{
x[i]=i;
y[i]=i; }在主程序中用OnDraw在一个对话框中想把每个(x,y)点“实时”画出。 我想问的是,当dll中有一组(x[0],y[0])得到时,“怎么通知”Ondraw把(x[0],y[0])这个点画上,当这个点画完后,再让dll计算(x[1],y[1]),然后“再通知”Ondraw把(x[1],y[1])这个点画上,然后dll再计算(x[2],y[2]),依此类推。
for(i=0;i<100;i++)
{
x[i]=i;
y[i]=i; }在主程序中用OnDraw在一个对话框中想把每个(x,y)点“实时”画出。 我想问的是,当dll中有一组(x[0],y[0])得到时,“怎么通知”Ondraw把(x[0],y[0])这个点画上,当这个点画完后,再让dll计算(x[1],y[1]),然后“再通知”Ondraw把(x[1],y[1])这个点画上,然后dll再计算(x[2],y[2]),依此类推。
比如:
dll在for循环中发一个消息通知ondraw要绘一个点,当ondraw画完时,在发个消息给dll,通知dll点画好了,然后让dll继续接着算下一个点。 可以的话怎么把消息发给ondraw呢?
如果不行,可以用消息机制实现,在DLL中保存一个主程序窗口句柄,然后发送自定义消息SendMessage,然后在主程序中接收就可以了。不过如果画点的数量非常大,这样做似乎效率不佳。