Вы бы пока со сравнением строк и вообще объектов разобрались, прежде чем лезть в UI и многопоточность. Ваш код просто ужасен, потому что вы совершили все возможные ошибки в этих нескольких строчках.
Ну, а по делу - с графикой можно работать только из EventThread потому, что она не потокобезопасна. читайте как запускать код в потоке графики. см SwingUtilities.