• 🔥 Бесплатный курс от Академии Кодебай: «Анализ защищенности веб-приложений»

    🛡 Научитесь находить и использовать уязвимости веб-приложений.
    🧠 Изучите SQLi, XSS, CSRF, IDOR и другие типовые атаки на практике.
    🧪 Погрузитесь в реальные лаборатории и взломайте свой первый сайт!
    🚀 Подходит новичкам — никаких сложных предварительных знаний не требуется.

    Доступ открыт прямо сейчас Записаться бесплатно

Обмен данными между формами

  • Автор темы Автор темы Guest
  • Дата начала Дата начала
Статус
Закрыто для дальнейших ответов.
G

Guest

Как можно организовать обмен данными между двумя дочерними формами одного приложения. К примуру приложение выдает две формы на экран в одной вводятся данные, в другой строится график.
 
Этого можно добиться, либо через COM, либо через буфер (с посылкой сообщения
в окно приемник об изменении данных), проще посылать сообщение и обрабатывать
процедуру обработки сообщения окна, берете создаете сообщение, что то типа
WM_USER+$500
В окне источнике пишите SendMessage(Окно, WM_USER+$500, LONG (поитер ту дата), 0)

а в окне приемнике
WM_USER+$500 :
Begin
Обработка данных
end
 
Поскольку приложение одно, то данные можно передавать через любую переменную твоего приложения: одна форма пишет в переменную, другая - читает из нее.
 
ну вообще для доступа к ресурсам с одной формы к другой достаточно прописать в начале твоего cpp-шки или pas-а (для Builder и Delphi соответственно) строчку:

#include <vcl.h>
#pragma hdrstop

#include "Unit1.h"
#include "Unit2.h" <- вот её ты и дописываешь, чтобы из первой формы иметь доступ к компонентам или переменным второй
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma resource "*.dfm"
TForm1 *Form1;
int bbb; <- а так ты должен определить переменную в нужной тебе форме, чтобы читать её в другой.

если тебе нужен доступ, например, к функции нажатия к-либо кнопки на Form2, то ты пишешь в главном коде:
Form2->Button1Click(NULL);

вот в принципе и всё. а как отследить изменение данных и отображать их на зависимой форме - это чисто события надо отслеживать иобрабатывать алгоритм нужный.
 
seltsam
Хороший приём. Молодец. А главное работает :)
 
Статус
Закрыто для дальнейших ответов.
Мы в соцсетях:

Взломай свой первый сервер и прокачай скилл — Начни игру на HackerLab

Похожие темы