I am making a C++/CLI Forms application.
In the main window of my app I have a button. When I click that button I call the Load function. Below there is the C++/CLI code:
private: System::Void Button1_Click(System::Object^ sender, System::EventArgs^ e) {
Load();
}
The function Load() is a time-consuming function. It uses the cURL library to send several HTTP GET request to a website.
In the Form I also included a ProgressBar and a textLabel showing the current request being sended.
The problem is that when I click the button and call the function the Form just freezes. I can’t see the progressBar and Textlabel changing it’s value while the function Load() is called, the Form is just freezed. When the function Load() has finished sending request, suddenly the progressBar change It’s value to 100%.
I hope I described my problem clearly enough to understand it.
Move your task to another thread, or call
Application.DoEvents();, just after you updating your scrollbar value.