Ты создаешь новый объект класса toolbutton, без родителя, с именем test, передавая в его конструктор строку "KviStyledToolButton::options". Ожидаемо создается кнопка неизвестно где. Поэтому и координаты её каждый раз случайные.
А нужно создавать объект класса wrapper и передавать в его конструктор путь до Qt-объекта. Так как у себя я кнопки KviStyledToolButton::options не нашел, то привел пример для KviStyledToolButton::kvirc.generaloptions.
//%a=$new(wrapper,0,testwrapper,KviFrame::kvirc_frame,QDockArea::qt_top_dock,KviCustomToolBar::options,KviStyledToolButton::kvirc.generaloptions)
%a=$new(wrapper,0,testwrapper,KviFrame::kvirc_frame,KviStyledToolButton::kvirc.generaloptions)
echo %a->$property("pos")
В закомментированной строчке - полный путь. Но его можно полностью не указывать.
Итого - каждый раз выдает одни и те же координаты той самой единственной кнопки KviStyledToolButton::kvirc.generaloptions