Вы объявили глобальную переменную в верхней части файла заголовка
extern QString globelusername;
Но вы никогда не определяете ее.
У вас есть локальные определения внутри функций, но эти переменные не t глобальный, который вы, вероятно, думаете, что назначаете. Это просто временные переменные, которые go удаляются, когда включающая область действия функции возвращает:
QString globelusername = username; //globlevariable
Чтобы исправить, определите это вверху mainwindow.cpp
:
#include "mainwindow.h"
#include "ui_mainwindow.h"
QString globelusername; // add this line
MainWindow::MainWindow(QWidget *parent)
Затем во всех тех местах, где вы определяете globelusername внутри функции, измените его так, чтобы он просто ссылался на переменную вверху (т.е. удалите объявление типа QString, чтобы компилятор знал, что это присвоение, а не новая переменная)
globelusername = username;