У меня проблема, поскольку я не могу найти правильное решение в ссылке, чтобы что-то произошло после gtk_main(). Это моя функция для простого бота, который решает игру, но он не будет работать, потому что он даже не начинается. Если я установил gtk_main() после завершения бота, я получу решаемую игру, чтобы она работала. Есть ли функция в gtk, которая позволяет мне работать так, как я хочу в главном цикле gtk? Вот код:GTK после основной петли
void RunBot(struct Packet *packet){
gtk_main();
while(LookForWin(packet)==0){
packet->data->color_number=ColorPredictor(packet);
CheckColors(packet);
RefreshBoard(packet->essentials,board,colors,BoardButtons,Board);
printf("Running..\n");
} }
Заранее спасибо :)
Когда вы используете набор инструментов GUI, например, GTK +, вы будете использовать события, тайм-ауты и простаивающие обратные вызовы, а не писать код, который работает прямо, как в консольном приложении. Что делают 'пакет' и' LookForWin() 'делают? – andlabs
@andlabs Пакет - это структура, содержащая информацию о состоянии игры и т. Д. LookForWin() - это просто проверка функции, если бот уже выиграл. Мне удалось сделать это другим путем, но я не могу заставить его обновлять каждую итерацию цикла. Вместо этого он обновляется случайно. – Darknez