Имитация действий в wxWidgets

Это русская секция форума wxWidjets. В этой секции вы можете обсуждать любые вопросы, связанные с wxWidgets на вашем родном языке.
Post Reply
disputant
In need of some credit
In need of some credit
Posts: 5
Joined: Sat Jun 14, 2014 7:27 am

Имитация действий в wxWidgets

Post by disputant » Wed Apr 13, 2016 1:09 pm

Добрый день!
Есть такая проблема. Программа, написана на Visual C++ с использованием wxWidgets. Задача: сымитировать рабочую сессию. Т.е. переписать программу так, чтобы можно было задать что-то типа описания действий, и программа запускается, и начинает автоматически нажимать кнопочки, выбирать пункты меню и т.п.
Основная проблема — как это делается? Требуется, чтобы при нажатии кнопки отработали все действия из соответствующего обработчика. Как я понимаю, надо создать wxCommandEvent, и как-то его передать обработчику. Пробовал в главном окне что-то типа для кнопки-переключателя

Code: Select all

wxCommandEvent event(wxEVT_COMMAND_TOGGLEBUTTON_CLICKED,id_button);
event.SetEventObject(this);
GetEventHandler()->ProcessEvent(event);
Ничего не сработало. Как это делать правильно, и второй вопрос — где? В какой функции? Чтоб можно было программу, грубо говоря, из пакетного файла запустить, чтоб она сама все посчитала и закрылась, без малейшего вмешательства человека.

User avatar
T-Rex
Moderator
Moderator
Posts: 1178
Joined: Sat Oct 23, 2004 9:58 am
Location: Zaporizhzhya, Ukraine
Contact:

Re: Имитация действий в wxWidgets

Post by T-Rex » Thu Apr 14, 2016 11:01 am

На вид, правильно написано. А точно у wxFrame для которого мы вызываем GetEventHandler()->ProcessEvent() есть обработчик такого события? Лучше тогда весь код фрейма запостить, чтобы было понятно, что происходит.

ONEEYEMAN
Part Of The Furniture
Part Of The Furniture
Posts: 3403
Joined: Sat Apr 16, 2005 7:22 am
Location: USA, Ukraine

Re: Имитация действий в wxWidgets

Post by ONEEYEMAN » Fri Apr 15, 2016 8:11 pm

Dobrogo vremeni sutok,
Prosche vsego - posmotret na kod v papke "test".
Prokompilirovat, zapustit i izuchit

Eto vse uge napisano v biblioteke i test programma tak rabotaet.

Post Reply