den |
Отправлено: 28.09.2005, 13:26 |
|
Не зарегистрирован
|
Здравствуйте!
Имеется класс, у которого есть метод возвращающий значение функции типа float. Как назначить этому методу событие, чтобы я мог задавать вид функции на форме, по ходу выполнения программы, а не в классе? |
|
gvg |
Отправлено: 28.09.2005, 20:53 |
|
Машинист паровоза
Группа: Участник
Сообщений: 222
|
QUOTE | Как назначить этому методу событие, чтобы я мог задавать вид функции на форме, по ходу выполнения программы, а не в классе? |
Что такое "вид функции на форме"? |
|
BreakPointMAN |
Отправлено: 28.09.2005, 23:32 |
|
Станционный диспетчер
Группа: Участник
Сообщений: 86
|
Дэн! Чтобы в run-time просчитать значение какого-то выражения, заданного в виде строки, тебе нужен компонент/класс/библиотечка, которая парсит выражение, возможно переводит его в обратную польскую нотацию, и просчитывает... я юзал TRxMathParser из RxLib 2.75 для этих целей... %)
|
|
den |
Отправлено: 29.09.2005, 15:09 |
|
Не зарегистрирован
|
Здравствуйте! Видел то что мне нужно на Паскале:
type
TGetFunc = procedure(Sender: TObject; var Y: Extended) of object;
TMyClass = class
private
fOnGetFunc: TGetFunc;
procedure SetOnGetFunc(const Value: TGetFunc);
public
property OnGetFunc: TGetFunc read fOnGetFunc write SetOnGetFunc;
end;
Как такой код реализовать на C++ Builder?
2.Стандартный TParser хуже?
|
|
Gedeon |
Отправлено: 29.09.2005, 16:43 |
|
Ветеран
Группа: Модератор
Сообщений: 1742
|
Я кажется вопрос понял, имеется ввиду назначить в зависимости от ситуации разные методы, так?
Тогда так:
CODE |
void __fastcall TForm1::Method2(TObject *Sender)
{
ShowMessage("Method2");
}
//---------------------------------------------------------------------------
void __fastcall TForm1::Method1(TObject *Sender)
{
ShowMessage("Method1");
}
//---------------------------------------------------------------------------
void __fastcall TForm1::SetClick(TObject *Sender)
{
if(RadioButton1->Checked) Button1->OnClick = Method1;
if(RadioButton2->Checked) Button1->OnClick = Method2;
}
//--------------------------------------------------------------------------- |
На форму 2 радиокнопки и две кнопки, одной устанавливаем, второй смотрим событие.
|
|