You are emiting setlabel() signal for every line, and it is connected to setText() which will replace the complete label text (in your case the previous line will be erased). One solution would be implement a custom slot where in you read the current text and append with new line and then setText() on the label. One other option you can use QPlainTextEdit (instead of QLabel) and connect to appendPlainText() slot
Bookmarks