<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
</head>
<body>
Myslím, že to není ono.<br>
<br>
Jde o následující situaci:<br>
<br>
<font face="monospace"><b>void callbackFn(int dataCnt);</b><b><br>
</b><b><br>
</b><b>namespace pokus1 {</b><b><br>
</b><b> ...</b><b><br>
</b><b> public ref class MyForm : public
System::Windows::Forms::Form</b><b><br>
</b><b> {</b><b><br>
</b><b> ...</b><b><br>
</b><b> <font color="#008000">// tady je form a všechny
controly</font></b><b><br>
</b><b> ...<br>
<br>
</b><b> <font color="#008000">// kliknutím na button
se se odsud spouští ten proces na pozadí:</font></b><b><br>
</b><b> startTest( ... callbackFn); <font
color="#008000">// funkce z externí knihovny</font></b><b><br>
</b><b> </b><b><br>
</b><b> <font color="#008000">// je tu funkce na
aktualizaci pictureboxu:</font></b><b><br>
</b><b> public: void refreshImg(int dataIdx) {</b><b><br>
</b><b> ...</b><b><br>
</b><b> }</b><b><br>
</b><b> }</b><b><br>
</b><b>}</b><b><br>
</b><font color="#008000"><b>// tady, <font color="#ff0000">mimo
namespace projektu</font> je callbackFn,<br>
// jinak ji ta startTest nemůže použít</b></font><b><br>
</b><b>void callbackFn(int dataCnt) {</b><b><br>
</b><b> <font color="#008000">// tady by se měl zavolat
refreshImg(dataCnt-1);<br>
</font></b><b></b><b>}</b></font><br>
<br>
PH<br>
<br>
<br>
<div class="moz-cite-prefix">Dne 04.03.2022 v 16:52 Jiří Nesvačil
napsal(a):<br>
</div>
<blockquote type="cite"
cite="mid:c6655a7b-dea9-756c-ab63-54d72625f6c6@posys.cz">Zdravim,
<br>
<br>
hledejte BeginInvoke
<br>
<br>
Nesvacil
<br>
<br>
Dne 04.03.2022 v 16:32 Pavel Hudeček napsal(a):
<br>
<blockquote type="cite">Dobrý den všem,
<br>
<br>
mějme program psaný ve VS jako CLR aplikaci v C++.
<br>
Program spustí funkci běžící na pozadí, která občas vyvolá
callback a tím oznamuje, že jsou k dispozici nová data. Pak by
se měl aktualizovat picturebox, případně objevit záznam v
listboxu a vše pokračuje dál.
<br>
<br>
Jenže nemůžu přijít na to, jak z tý callback funkce, která není
součástí managed prostředí, vyvolat akci v managed prostředí.
<br>
<br>
Teda funguje mi varianta, že callback nastaví nějakou globální
proměnnou a na tu periodicky kouká timer, ale to je takový
poněkud nepraktický, protože délka "občas" závisí na kvantových
jevech a může dosahovat 100 kHz, nebo taky půl hodiny.
<br>
<br>
Nějaké návrhy, jak to dělat přímočařeji?
<br>
<br>
Díky,
<br>
PH
<br>
_______________________________________________
<br>
HW-list mailing list - sponsored by <a class="moz-txt-link-abbreviated" href="http://www.HW.cz">www.HW.cz</a>
<br>
<a class="moz-txt-link-abbreviated" href="mailto:Hw-list@list.hw.cz">Hw-list@list.hw.cz</a>
<br>
<a class="moz-txt-link-freetext" href="http://list.hw.cz/mailman/listinfo/hw-list">http://list.hw.cz/mailman/listinfo/hw-list</a>
<br>
</blockquote>
_______________________________________________
<br>
HW-list mailing list - sponsored by <a class="moz-txt-link-abbreviated" href="http://www.HW.cz">www.HW.cz</a>
<br>
<a class="moz-txt-link-abbreviated" href="mailto:Hw-list@list.hw.cz">Hw-list@list.hw.cz</a>
<br>
<a class="moz-txt-link-freetext" href="http://list.hw.cz/mailman/listinfo/hw-list">http://list.hw.cz/mailman/listinfo/hw-list</a>
<br>
</blockquote>
<br>
</body>
</html>