Odwołanie z osobnej funkcji (pliku) do progressBaru (Visual studio)
Ostatnio zmodyfikowano 2015-06-06 22:35
kswmd Temat założony przez niniejszego użytkownika |
Odwołanie z osobnej funkcji (pliku) do progressBaru (Visual studio) » 2015-04-28 15:01:40 Witam, Tworzę program który wykonuje bardzo duże obliczenia (np. 50 000 razy przelicza po kolei 50000 punktów) w związku z czym przydałaby mi się informacja na temat postępu. Jeżeli nie byłaby to osobna funkcja użyłbym po prostu "progressBar1->value= ",jednak bez specjalnego odwołania Visual paska postępu nie widzi. W jaki sposób mogę się z osobnej funkcji (oraz z osobnego pliku) odwołać do progressBar'u?. |
|
darko202 |
» 2015-04-28 15:26:53 |
|
kswmd Temat założony przez niniejszego użytkownika |
» 2015-04-28 15:48:13 Przykład niestety kompletnie niezwiązany z moim problemem. Nie interesuje mnie, by pasek postępu przesuwał się z czasem tyko aby był uzależniony od postępu liczenia pętli. Coś w stylu aby działa mi funkcja typu: void f1( int a ) { for( int t = 0; t < 100; ++t ) { for( int i = 0; i < 50000; ++i ) a += 5; progressBar1->value = t; } return; }
czyli co muszę dopisać przed " progressBar1->value=t;" aby kompilator wiedział co ma zrobić? |
|
xordi |
» 2015-04-29 10:55:20 Wystarczy do funkcji (a najlepiej obiektu który przeprowadza obliczenia) wysłać weak_ptr, uchwyt(HWND), albo pointer obiektu zawierający metodę (badź analogicznie wykonać operację na uchwycie HWND) do uaktualniania "progressbara".
I przy każdej pętli wysyłać "wiadomość" do progressbara.
Można jeszcze się pobawić w eventy, ale to wyższa szkoła jazdy.
|
|
kswmd Temat założony przez niniejszego użytkownika |
» 2015-04-29 11:49:36 A możesz to tak łopatologicznie co gdzie wpisać? Nigdy się nie posługiwałem ani uchwytami ani wskaźnikami, a takie podstawowe informacje w książkach odnoszą się jedynie do zmiennych, a nie fragmentów okienka. |
|
darko202 |
» 2015-04-29 12:55:35 |
|
kswmd Temat założony przez niniejszego użytkownika |
» 2015-04-29 16:04:36 eh... Ale piszę wyraźnie, że nie chodzi o to jak działa progressbar, bo to wiem i nigdy o to nie pytałem. Pytam jak się do niego odwołać z osobnej funkcji. Bo jak wpiszę Twoją wersję to otrzymam błąd "progressBar1" : niezadeklarowany identyfikator I co zrobić by kompilator znalazł ten progressbar? |
|
xordi |
» 2015-06-06 22:35:18 Żeby kompilator wiedział co ma zrobić wyślij UCHWYT(HWND - handle albo pointer) tego progressbara do swojej funkcji, przecież napisałem. Pokaż mi swoją implementację progressbara i swojej funkcji. |
|
« 1 » |