Здравствуйте, подскажите как реализовать связь между объектами (например кнопкой и полем) на языке C++?
Codeblocks wxSmith
Здравствуйте, подскажите как реализовать связь между объектами (например кнопкой и полем) на языке C++?
Не советую писать программы, используя wxWidgets. Он слишком плохо документирован и редко используется. Рекомендую использовать Qt или GTK.
SUSE_user, ну, у GTK с документацией тоже не очень. К тому же он на plain C
s.xbatob, Тогда однозначно Qt - он на C++, отличная документация и IDE (Qt Creator)
SUSE_user, Да и Qt подтягивается :( На новые компоненты документация заметно хуже. К Creator и QMake тоже вопросы, так что я предпочитаю KDevelop с CMake. Собственно, в KDE от них тоже не просто так отказались.
Хорош только Designer. Он как раз для рисования окон и связывания их компонент.
Здравствуйте, подскажите как реализовать связь между объектами (например кнопкой и полем) на языке C++?
Ну в wxSmith, когда форма уже создана, обычно просто щелкаешь по кнопке дважды, в результате чего создается файл C++, с объявлением класса формы, и переходом к функции вызова при нажатии кнопки в которой все и прописывается.
На пример надо соединить поле wxRichTextCtrl и кнопку.
Для этого в форме щелкаем по окну wxRichTextCtrl и смотрим название класса Class name, при необходимости правим название и дважды щелкаем что бы с генерировать объявление класса wxRichTextCtrl, под новым именем. Останется только сделать вызов какого нибудь метода данного класса в функции кнопки, допустим wxRichTextCtrl объявлен как RichTextCtrl1. Тогда как пример вызвать метод добавления текста:
void ClassForm::OnButton1Click(wxCommandEvent& event)
{
RichTextCtrl1->AppendText(wxString::FromUTF8("Всякая белеберда!"));
}
Как результат каждый раз щелкая по кнопке в поле RichTextCtrl1 будет добавляться текст к написанному тексту.
Просто надо смотреть список методов вызываемого класса. Все как в обычном C++ и не более.
Другое дело нужно знать что каждый метод делает, я не знаю )