Форум программистов, компьютерный форум, киберфорум
C++ Builder
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск  
 
 
Рейтинг 4.95/21: Рейтинг темы: голосов - 21, средняя оценка - 4.95
 Аватар для Mrak19901124
47 / 12 / 4
Регистрация: 25.02.2010
Сообщений: 259

2 формы первая закрытая со второй работаем

04.03.2010, 00:17. Показов 4565. Ответов 34
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
хелп не могу розобраца мануала по этом практычески не нашол.
Мне нуно с Form1 перейти на Form2 з Form2 на Form...
но чтобы при переходи з Form1 на Form2 оно полностю закрывало Form1
если мы прописываем при кнопке
C++
1
2
3
4
5
6
7
8
9
10
11
12
#include "Unit1.h"
#include "Unit2.h"
 
 
void __fastcall TForm1::Button1Click(TObject *Sender)
{
 
Form1->Visible=false;
Form1->Enabled=false;
Application->CreateForm(__classid(TForm2), &Form2);
  Form2->ShowModal();
}
запускаемо нажымем на кнопку оно нам откроет Form 2 мы закроемо Form2 (хрестиком в правом углу) то у нас програма будет висеть в запущених потомучто Form1 мы не закрыли а токо зделали невидими и не активным
Как при открытии Form2 закрыть Form1???


и ещо вопрос у меня иногда выбивает такую ошыбку почему?

[Компоновщик Ошибка] Unresolved external '__fastcall TForm1::FormCreate(System::TObject *)' referenced from C:\PROGRAM FILES\BORLAND\CBUILDER6\PROJECTS\123\UNI T1.OBJ
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
04.03.2010, 00:17
Ответы с готовыми решениями:

Как заставить работать компоненты второй формы (пока инициализируеться первая форма)?
Всем Привет! :) Возникла вот одна задачка. при запуске программы (ФОРМА1 ) пока она создаеться включается (ФОРМА2) и показывает процесс...

При закрытии второй формы закрывается и первая
Доброго всем дня. Начал изучать с # и возникла одна проблемка, у меня есть 2 формы Form1 и Form2 на Form1 есть кнопка при нажатии которой...

При открытии второй формы первая становится недоступна
При нажатии на кнопку "Телепорты" появляется вторая форма и на неё переходит фокус. В результате чего я не могу использовать команды из...

34
 Аватар для Mrak19901124
47 / 12 / 4
Регистрация: 25.02.2010
Сообщений: 259
04.03.2010, 18:53  [ТС]
Студворк — интернет-сервис помощи студентам
Sasha,
выдайот ошыбку!!!
ошыбка
[C++ Ошибка] Unit2.cpp(18): E2316 '_fastcall TForm2::FormClose(TObject *,TCloseAction &)' is not a member of 'TForm2'
0
 Аватар для Sasha
4956 / 2420 / 531
Регистрация: 05.06.2008
Сообщений: 7,518
Записей в блоге: 3
04.03.2010, 18:56
Замени своё
C++
1
2
Application->CreateForm(__classid(TForm2), &Form2);
  Form2->ShowModal();
на просто
C++
1
Form2->ShowModal();
1
 Аватар для Mrak19901124
47 / 12 / 4
Регистрация: 25.02.2010
Сообщений: 259
04.03.2010, 18:59  [ТС]
заменил вот первый файл ошыбка всьоравно!
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
//---------------------------------------------------------------------------
 
#include <vcl.h>
#pragma hdrstop
 #include "Unit2.h"
#include "Unit1.h"
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma resource "*.dfm"
TForm1 *Form1;
//---------------------------------------------------------------------------
__fastcall TForm1::TForm1(TComponent* Owner)
        : TForm(Owner)
{
}
//---------------------------------------------------------------------------
 
 
void __fastcall TForm1::Button1Click(TObject *Sender)
{
 Form2->ShowModal();
}
//---------------------------------------------------------------------------
вот второй
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
//---------------------------------------------------------------------------
 
#include <vcl.h>
#pragma hdrstop
 
#include "Unit2.h"
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma resource "*.dfm"
TForm2 *Form2;
//---------------------------------------------------------------------------
__fastcall TForm2::TForm2(TComponent* Owner)
        : TForm(Owner)
{
}
//---------------------------------------------------------------------------
   void __fastcall TForm2::FormClose(TObject *Sender, TCloseAction &Action)
{
SendMessage(FindWindow("TForm1","Form1"),WM_CLOSE,0,0);
}
0
 Аватар для Sasha
4956 / 2420 / 531
Регистрация: 05.06.2008
Сообщений: 7,518
Записей в блоге: 3
04.03.2010, 19:05
А попробуй заново создать проект такой же как у тебя щас написано

Добавлено через 30 секунд
Потомучто у меня так же написано как у тебя и никаких ошибок не выходит
0
 Аватар для Mrak19901124
47 / 12 / 4
Регистрация: 25.02.2010
Сообщений: 259
04.03.2010, 19:08  [ТС]
не всеравно ошыбка
[C++ Ошибка] Unit2.cpp(18): E2316 '_fastcall TForm2::FormClose(TObject *,TCloseAction &)' is not a member of 'TForm2'
0
 Аватар для Sasha
4956 / 2420 / 531
Регистрация: 05.06.2008
Сообщений: 7,518
Записей в блоге: 3
04.03.2010, 19:18
Странно

Добавлено через 5 минут
А как ты создаёшь вторую форму?
0
 Аватар для Mrak19901124
47 / 12 / 4
Регистрация: 25.02.2010
Сообщений: 259
04.03.2010, 19:21  [ТС]
Файл-новие-форма!
0
 Аватар для Sasha
4956 / 2420 / 531
Регистрация: 05.06.2008
Сообщений: 7,518
Записей в блоге: 3
04.03.2010, 19:26
хм странно
0
 Аватар для Mrak19901124
47 / 12 / 4
Регистрация: 25.02.2010
Сообщений: 259
04.03.2010, 19:32  [ТС]
может чото в настройках форм нуно прописывать???
0
 Аватар для Sasha
4956 / 2420 / 531
Регистрация: 05.06.2008
Сообщений: 7,518
Записей в блоге: 3
04.03.2010, 19:35
В настройках форм прописывать ничё не надо

А ты по пробуй написать вместо моего кода во второй форме
вот просто этот

C++
1
Close();
просто на проверку
0
 Аватар для Mrak19901124
47 / 12 / 4
Регистрация: 25.02.2010
Сообщений: 259
05.03.2010, 11:56  [ТС]
Когда прописываю
C++
1
Close();
ошыбки нет но и не делает ничего
если
C++
1
2
3
4
void __fastcall TForm2::FormClose(TObject *Sender, TCloseAction &Action)
{
Close();
}
таже ошыбка в этом оделе кода
C++
1
void __fastcall TForm2::FormClose(TObject *Sender, TCloseAction &Action)
0
Покинул форум
3189 / 1368 / 109
Регистрация: 29.01.2010
Сообщений: 2,887
05.03.2010, 16:21
Mrak19901124, кажется ты просто вставил вот этот код в Unit2.cpp:
C++
1
2
3
4
5
  
void __fastcall TForm2::FormClose(TObject *Sender, TCloseAction &Action)
{
SendMessage(FindWindow("TForm1","Form1"),WM_CLOSE,0,0);
}
Но так не делается!!!
Ты должен вставить код:
C++
1
SendMessage(FindWindow("TForm1","Form1"),WM_CLOSE,0,0);
На событие FormClose();
А оно у тебя не обьявленно в Unit2.h
В этом и вся проблема.
0
 Аватар для Mrak19901124
47 / 12 / 4
Регистрация: 25.02.2010
Сообщений: 259
06.03.2010, 16:56  [ТС]
харашо а как обявить собитие FormClose();????
0
Покинул форум
3189 / 1368 / 109
Регистрация: 29.01.2010
Сообщений: 2,887
06.03.2010, 21:10
Выдили Form2.
Зайди во вкладку Events на панели Object Inspector.
Найди OnClose и дважды щелкни по пустой строке справа.
И вставь ту функию (SendMessage(FindWindow("TForm1","Form1") ,WM_CLOSE,0,0);) между фигурными скобками.
Все.
1
 Аватар для Mrak19901124
47 / 12 / 4
Регистрация: 25.02.2010
Сообщений: 259
07.03.2010, 13:41  [ТС]
ребята спасиба ) всё работает !
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
07.03.2010, 13:41

C# Запуск первой формы затем второй(чтобы первая закрылась автоматический)
Добрый день я ищу код что бы при запуске программы открывалась первая форма с картинкой, при окончание загрузки первой формы автоматически...

Нужно, чтобы при закрытии второй формы первая опять становилась видимой
При нажатии на кнопку на форме1 (главная) открывается вторая форма а первая скрывается, нужно что бы при закрытии второй формы первая опять...

Если первая цифра меньше второй,то вычислить их сумму,если первая цифра больше второй,то вычислить их разность
Дано двузначное число N.Если первая цифра меньше второй,то вычислить их сумму,если первая цифра больше второй,то вычислить их разность,если...

Первая цифра меньше ли второй?
Если поможете буду очень благодарна...Заранее спасибо. Дано натуральное число. Вычислить, первая цифра меньше ли второй.

В зависимости от того введена ли открытая скобка или закрытая напечатать “открытая круглая скобка” или “закрытая фигурная скобка”
В зависимости от того введена ли открытая скобка или закрытая напечатать “открытая круглая скобка” или “закрытая фигурная скобка”...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
35
Ответ Создать тему
Новые блоги и статьи
Из невошедшего на форум (диалог с ИИ-гугла)
zorxor 29.07.2026
А вот, что интересно, сказал мне ИИ-гугла: Этот текст — эмоциональный пост пользователя под ником zorxor на интернет-форуме (вероятно, посвященном мистике, непознанному или альтернативной науке). . . .
Был праздник вчера, а я и не знал.
kumehtar 28.07.2026
27. 07. 2026г. Intel Core 2 Duo исполнилось 20 лет Новости компьютерного мира и их обсуждение (4) Салют, шампанское, овации! :drink:
Нейтральные знания, чистый код - бла-бла-бла-бла, на самом деле кликбейт и самореклама, плагиат, и вот почему
Hrethgir 27.07.2026
То-есть отклонение такой публикации говорит само за себя, и пусть только возьмут на вооружение после отклонения публикации - это будет чистейшим актом плагиата. Отклонял Хабр. Дословно, отклонённая. . .
тв 16 бой ии
anaschu 27.07.2026
Великий Перелом ИИ: Как уравнения ОДУ Radau дожали цензурные фильтры Алисы Фиксируем в мемофонде Теории Всего беспрецедентный факт в истории ИИ-зондирования. В затяжном многораундовом. . .
мв 15. непроверенное, возможно, глюк
anaschu 27.07.2026
НАУЧНО-АНАЛИТИЧЕСКИЙ ОТЧЕТ. РАЗДЕЛ 1. 1: «НАУКА» (РАСШИРЕННАЯ СТЕХИОМЕТРИЧЕСКАЯ И ГЕНЕТИЧЕСКАЯ ВЕРСИЯ)Тема: Теоретическое обоснование инвариантности 19-мерного тензорного ядра непрерывных ОДУ и. . .
Очистка реквизитов и табличных частей документа при копировании (вариант 2)
Maks 26.07.2026
Алгоритм из решения ниже разработан на примере нетипового документа "ЗаявкаНаРаботу", разработанного в КА2. Задача: Заменить алгоритм запрета копирования документов для сотрудников с ролью "Стажер",. . .
Доктрина интенционального знания - Доктрина для портала "Срез".
Hrethgir 25.07.2026
Может найдётся кто захочет оценить доктрину. . . Написания правил участия для меня роскошь, требующая лимита времени, поэтому все сообщения не прошедшие модерацию будут видны только участникам портала,. . .
сукцессия 44. Решил подать на припринт в межународные сервисы препринтов. Но нужно одобрение от ученых
anaschu 25.07.2026
Английский вариант. Пока кто то не одобрит мою личность, мне не получиться это опубликовать на препринте. Но заявку на публикацию статьи я сегодня подам.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru