powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / C++ [игнор отключен] [закрыт для гостей] / Визуальный компонент, как параметр
6 сообщений из 6, страница 1 из 1
Визуальный компонент, как параметр
    #32638025
BuilderWithDelphi
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Как в функцию передать компонент(TStringGrid) как параметр, который будет изменяться этой функцией?
...
Рейтинг: 0 / 0
Визуальный компонент, как параметр
    #32638073
funikovyuri
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: plaintext
1.
2.
3.
4.
void my_function(TStringGrid* gonna_change)
{
   gonna_change->...
}
...
Рейтинг: 0 / 0
Визуальный компонент, как параметр
    #32638120
BuilderWithDelphi
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
funikovyuri
Код: plaintext
1.
2.
3.
4.
void my_function(TStringGrid* gonna_change)
{
   gonna_change->...
}


Проблема возникает при вызове функции:
my_function(Grid1);
[Linker Error] Unresolved external 'TD::GridUp(Grids::TStringGrid *)' referenced from C:\DATABASE\PURCHBOOK\SPRBOOK.OBJ.

my_function(&Grid1);
[C++ Error] SprBook.cpp(113): E2034 Cannot convert 'TStringGrid * *' to 'TStringGrid *'.

my_function(*Grid1);
[C++ Error] SprBook.cpp(113): E2034 Cannot convert 'TStringGrid' to 'TStringGrid *'.
Функция вызывается из другого модуля, в заголовках все прописано...
Перехожу с делфей на билдера, вот проблемки пока встречаются...
...
Рейтинг: 0 / 0
Визуальный компонент, как параметр
    #32638160
roman10
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Правильный первый вариант:
my_function(Grid1);

[Linker Error] Unresolved external ... означает, что забыл подключить саму библиотеку (одних заголовочных файлов недостаточно)
...
Рейтинг: 0 / 0
Визуальный компонент, как параметр
    #32638214
funikovyuri
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: plaintext
1.
2.
my_function(&Grid1);
[C++ Error] SprBook.cpp( 113 ): E2034 Cannot convert 'TStringGrid * *' to 'TStringGrid *

А зачем же передавать указатель на указатель :) Достаточно просто my_function(Grid1); так ка все VCL objects создаются динамически и, следовательно, везде идет работа только через указатели на эти объекты

Например в TForm будет
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
class TmyForm: TForm
{
...

   TStringGrid *Grid1;
...
};
...
Рейтинг: 0 / 0
Визуальный компонент, как параметр
    #32638328
BuilderWithDelphi
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Простите меня, старого скрерозника!!!
Я положил функцию в датамодулу, но в описании не указал, что она к ней принадлежит!!!
Я описал как
void MyFunc(TStringGrid* InGrid)
вместо
void TDataMod::MyFunc(TStringGrid* InGrid)
Всем большое спасибо за помощь!!!
...
Рейтинг: 0 / 0
6 сообщений из 6, страница 1 из 1
Форумы / C++ [игнор отключен] [закрыт для гостей] / Визуальный компонент, как параметр
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]