[SOLVED]The program has unexpectedly finished.
-
My program crashes when I call this method. I'm trying to make graphic effect on an image.
void MainWindow::stripesOk() { int nodeHeight = stripesDialog->nodeHeight; double division = imageObject->height() / nodeHeight; int totalNodes = qFloor(division); targetImage = new QImage(imageObject->size(), QImage::Format_ARGB32); painter = new QPainter(targetImage); for(int i = 0;i < totalNodes; i++) { int x = 0; int y = i * nodeHeight; int width = imageObject->width(); int shift = stripesDialog->shift; int a = shift - (2 * shift); int b = shift; int randomShift = randomInterval(a,b); painter->drawImage(randomShift,y,*imageObject,x,y,width,nodeHeight); } imageObject = targetImage; }
-
Hi its hard to guess. You are 100% sure nodeHeight is not zero ?
Also if you start with debug, and place break point at first line, you can single step and see
which line that does the crash. -
thanks, the variables were not being set properly, so they were at 0 indeed.
the program is not crashing anymore, but I am only getting a blank image.
-
Hi,
Did you check the value of totalNodes ? Does the variables you use for drawImage have meaningful values ?
By the way, why allocate your QImage object on the heap ? That's not needed, furthermore, from the looks of it, you have a memory leak since you don't delete imageObject before replacing it with targetImage.
-
solved, had to check another variable . thanks all