![]() |
|
|
![]()
|
|
| ano360 |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 305 Регистрация: 22.5.2006 Где: Москва Репутация: нет Всего: нет |
есть файлы MForm.cpp и MForm.h. В MForm.h объявлен класс формы, в сзз соответственно его функции. Пытаюсь некоторые его функции вынести в файл MMenuFunc.сзз, И добавляю его #include "MMenuFunc.cpp" в MForm.cpp, не работает, ришет, что класс TPointsForm не определён в файле MMenuFunc.cpp, добавляю его в MForm.h-таже история. Пробовал прописырать в MMenuFunc.cpp заголовок объекта:
class TPointsForm : public TForm; Или class TPointsForm; Тоже ругается. Так как всётаки это реализовать. Сливать все функции в MForm.cpp, не выход. -------------------- Жизнь есть. |
|||
|
||||
| Romikgy |
|
|||
![]() Любитель-программер ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 7326 Регистрация: 11.5.2005 Где: Porto Franco Odes sa Репутация: 11 Всего: 146 |
сделай такой же файл но хедеровский(*.h) опиши в нем все ф_ции и прикрепи к кому нужно через инклюд также подключи к проекту файл MMenuFunc.cpp -------------------- Владение русской орфографией это как владение кунг-фу — истинные мастера не применяют его без надобности. |
|||
|
||||
| ano360 |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 305 Регистрация: 22.5.2006 Где: Москва Репутация: нет Всего: нет |
а MMenuFunc.cpp оставить пустым?
-------------------- Жизнь есть. |
|||
|
||||
| Romikgy |
|
|||
![]() Любитель-программер ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 7326 Регистрация: 11.5.2005 Где: Porto Franco Odes sa Репутация: 11 Всего: 146 |
нет в нем так все и остается, а в хедере только описываются ф_ции и переменые(если надо)
-------------------- Владение русской орфографией это как владение кунг-фу — истинные мастера не применяют его без надобности. |
|||
|
||||
| ano360 |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 305 Регистрация: 22.5.2006 Где: Москва Репутация: нет Всего: нет |
тогда я чёто не понял. Функция - член класса, описываемого далеко отсюда в MForm.h.
как я её опишу в MMenuFunc.h Это сообщение отредактировал(а) ano360 - 6.11.2006, 11:29 -------------------- Жизнь есть. |
|||
|
||||
| Romikgy |
|
|||
![]() Любитель-программер ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 7326 Регистрация: 11.5.2005 Где: Porto Franco Odes sa Репутация: 11 Всего: 146 |
-------------------- Владение русской орфографией это как владение кунг-фу — истинные мастера не применяют его без надобности. |
|||
|
||||
| ano360 |
|
||||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 305 Регистрация: 22.5.2006 Где: Москва Репутация: нет Всего: нет |
.cpp
.h
ПРобовал void __fastcall TPointsForm::ScrolsClick(TObject *Sender) { this->Scrols->Checked=true; } писать в .h -безрезультатно Это сообщение отредактировал(а) ano360 - 6.11.2006, 11:30 -------------------- Жизнь есть. |
||||
|
|||||
| Romikgy |
|
|||
![]() Любитель-программер ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 7326 Регистрация: 11.5.2005 Где: Porto Franco Odes sa Репутация: 11 Всего: 146 |
не корректно так делать имхо
этот класс у тя определен в другом месте а его ф_ции ты пишешь здесь не хорошо зачем такие сложности? -------------------- Владение русской орфографией это как владение кунг-фу — истинные мастера не применяют его без надобности. |
|||
|
||||
| ano360 |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 305 Регистрация: 22.5.2006 Где: Москва Репутация: нет Всего: нет |
Потомучто их будет ОЧЕНЬ много, а эти буквально 1-2 строчки, не хочу захламлять MForm.cpp, Хочу объеденить их по тематике в одном файле.
Чтоб когда Крупные, массивные писать буду, глаза не мозолили и не путались под руками. Там можно это как-нибудь реализовать? -------------------- Жизнь есть. |
|||
|
||||
| Romikgy |
|
|||
![]() Любитель-программер ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 7326 Регистрация: 11.5.2005 Где: Porto Franco Odes sa Репутация: 11 Всего: 146 |
что пишет при
и как подключаешь к проекту? -------------------- Владение русской орфографией это как владение кунг-фу — истинные мастера не применяют его без надобности. |
|||
|
||||
| ano360 |
|
||||||||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 305 Регистрация: 22.5.2006 Где: Москва Репутация: нет Всего: нет |
Создал всё заного в новом проекте:
Файл Unit1.cpp: /
Файл Unit1.h
unit2.cpp
unit2.h
Код неправильный, но очень хочется узнать как его исправить Это сообщение отредактировал(а) ano360 - 7.11.2006, 10:06 -------------------- Жизнь есть. |
||||||||
|
|||||||||
| Romikgy |
|
|||
![]() Любитель-программер ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 7326 Регистрация: 11.5.2005 Где: Porto Franco Odes sa Репутация: 11 Всего: 146 |
не так подключаются файлы cpp а через средства билдера! -------------------- Владение русской орфографией это как владение кунг-фу — истинные мастера не применяют его без надобности. |
|||
|
||||
| ano360 |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 305 Регистрация: 22.5.2006 Где: Москва Репутация: нет Всего: нет |
В смысле "Add to project"? "Add to project" cделано.
Или как ещё подключить надо? Кслатии чем отличается #include < > от #include " "? -------------------- Жизнь есть. |
|||
|
||||
| Romikgy |
|
|||
![]() Любитель-программер ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 7326 Регистрация: 11.5.2005 Где: Porto Franco Odes sa Репутация: 11 Всего: 146 |
да <> это в включения из папки инклюд "" это из папки проекта -------------------- Владение русской орфографией это как владение кунг-фу — истинные мастера не применяют его без надобности. |
|||
|
||||
| ano360 |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 305 Регистрация: 22.5.2006 Где: Москва Репутация: нет Всего: нет |
А почему тогда не работает? в Add to project unit2.cpp есть
-------------------- Жизнь есть. |
|||
|
||||
| Romikgy |
|
|||
![]() Любитель-программер ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 7326 Регистрация: 11.5.2005 Где: Porto Franco Odes sa Репутация: 11 Всего: 146 |
ошибки какие? или ды думаешь здесь все телепаты?
-------------------- Владение русской орфографией это как владение кунг-фу — истинные мастера не применяют его без надобности. |
|||
|
||||
| ano360 |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 305 Регистрация: 22.5.2006 Где: Москва Репутация: нет Всего: нет |
[C++ Error] Unit2.cpp(8): E2316 '_fastcall TForm1::Button1Click(TObject *)' is not a member of 'TForm1'
[C++ Error] Unit1.cpp(13): E2141 Declaration syntax error я вроде говорил:"Не знает такого объекта" Добавлено @ 11:56 Если добавить вручную void __fastcall TForm1::Button1Click(TObject *Sender); в класс TForm1 пишет вотчто: [C++ Error] Unit2.cpp(7): E2090 Qualifier 'TForm1' is not a class or namespace name [C++ Error] Unit2.cpp(7): E2040 Declaration terminated incorrectly -------------------- Жизнь есть. |
|||
|
||||
| maxim1000 |
|
|||
|
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 3334 Регистрация: 11.1.2003 Где: Киев Репутация: нет Всего: 110 |
а откуда unit2.cpp знает про TForm1?
ему ж надо сообщить, как и первому:
-------------------- qqq |
|||
|
||||
| ano360 |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 305 Регистрация: 22.5.2006 Где: Москва Репутация: нет Всего: нет |
maxim1000
тогда получится, я один класс 2ждя объявлю -------------------- Жизнь есть. |
|||
|
||||
| maxim1000 |
|
|||
|
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 3334 Регистрация: 11.1.2003 Где: Киев Репутация: нет Всего: 110 |
и что?
-------------------- qqq |
|||
|
||||
| ano360 |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 305 Регистрация: 22.5.2006 Где: Москва Репутация: нет Всего: нет |
попробовал, ошибок не выдаёт, но и кнопка не работает. Нажимаю-никокого еффекта.
-------------------- Жизнь есть. |
|||
|
||||
| maxim1000 |
|
|||
|
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 3334 Регистрация: 11.1.2003 Где: Киев Репутация: нет Всего: 110 |
например, в каждый h-файл, в котором описывается форма, должен подключаться заголовок с описанным классом TForm (или TCustomForm, не помню), так что класс TForm объявляется столько раз, сколько форм в проекте (или даже больше)
-------------------- qqq |
|||
|
||||
| ano360 |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 305 Регистрация: 22.5.2006 Где: Москва Репутация: нет Всего: нет |
событие onclick buttona не связано с функцией,поэтому и не реагирует
Добавлено @ 12:22 как событие связать с функцией, объявсленной не в unit1.cpp,где оно создиётся автоматически? Это сообщение отредактировал(а) ano360 - 7.11.2006, 12:16 -------------------- Жизнь есть. |
|||
|
||||
| Vyacheslav |
|
||||||
|
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 2124 Регистрация: 25.3.2002 Где: Москва Репутация: 47 Всего: 59 |
Интересно. Вам что ли заняться нечем, кроме того, чтобы искать приключений?
Ну да ладно Создаем еще один cpp командой File->New->Uint.
Заменяем #include "Unit2.h" на #include "Unit1.h" Добавляем #include <vcl.h> и код обработчика Unit2.h из каталога удаляем Получаем
Открываем инспектор и проверяем, что событию OnClick присвоен обработчик Button1Click. Если не привсвоен, открываем ниспадающий список и находим Button1Click. Он должен быть там, если объявлен в published секции Если же объявление сделано в не published секции, то в конструктор добавляеем код
Компилируем и запускаем -------------------- С уважением, Вячеслав Ермолаев |
||||||
|
|||||||
| ano360 |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 305 Регистрация: 22.5.2006 Где: Москва Репутация: нет Всего: нет |
АГРОМНОЕ спасибо
Первый вразумительный ответ по этой теме. Модетаторы, добавьте + -------------------- Жизнь есть. |
|||
|
||||
| Syrex |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 262 Регистрация: 9.2.2006 Где: Москва Репутация: 1 Всего: 1 |
А разве extern не нужен??
|
|||
|
||||
| ano360 |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 305 Регистрация: 22.5.2006 Где: Москва Репутация: нет Всего: нет |
так всё работает
-------------------- Жизнь есть. |
|||
|
||||
![]()
|
| Правила форума "С++ Builder" | |
|
|
Запрещается! 1. Публиковать ссылки на вскрытые компоненты 2. Обсуждать взлом компонентов и делиться вскрытыми компонентами
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Rrader. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | C++ Builder | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |