Форум программистов, компьютерный форум, киберфорум
Наши страницы
C++/CLI Windows Forms
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.67/3: Рейтинг темы: голосов - 3, средняя оценка - 4.67
DVyacheslavN
2 / 2 / 1
Регистрация: 28.11.2015
Сообщений: 105
Завершенные тесты: 1
1

Отправить данные из метода в TextBox

06.12.2015, 09:46. Просмотров 619. Ответов 14
Метки нет (Все метки)

Есть проблемы с подключением
код
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
#include "myhed.h"
#include "MyForm.h"
using namespace System::IO::Ports;
using namespace System;
using namespace System::Text;
using namespace System::Windows::Forms;
//using namespace proj123;
void  DataResivedHandler1(Object^ sender,SerialDataReceivedEventArgs^ e);
void Comport::inicializCOM()
{
    
    SerialPort^ mySeralPort = gcnew SerialPort ("COM1");
    mySeralPort->BaudRate=19200;
    mySeralPort->Parity = Parity::None;
    mySeralPort->StopBits = StopBits::One;
    mySeralPort->DataBits = 8;
    mySeralPort->Handshake = Handshake::None;
    mySeralPort->RtsEnable = true;
 
    mySeralPort->DataReceived +=gcnew SerialDataReceivedEventHandler(DataResivedHandler1);
    
}
    void  DataResivedHandler1(Object^ sender,SerialDataReceivedEventArgs^ e)
{
        SerialPort^ sp = (SerialPort^)sender;
        sp->NewLine="\r";
        String^ indata = sp->ReadLine();
        sp->WriteLine(indata);
        
}
 
 
 Comport::Comport()
{
    
}
 
Comport::~Comport()
{
 
}
 
void Comport::connect()
{
    SerialPort^ mySeralPort = gcnew SerialPort ("COM1");
    mySeralPort->Open();
}
 
void Comport::disconect()
{
    SerialPort^ mySeralPort = gcnew SerialPort ("COM1");
    mySeralPort->Close();
    
}
это хедер класса
C++
1
2
3
4
5
6
7
8
9
10
11
12
ref class Comport
{
public:
    Comport();
    ~Comport();
     void connect ();
     void disconect();
     void inicializCOM();
private:
    
    
};
и маин
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
#include "myhed.h"
#include <Windows.h>
 
#include "MyForm.h"
using namespace System::IO::Ports;
using namespace System;
using namespace proj123;
 
 
void main (){
    
 
    Application::SetCompatibleTextRenderingDefault(false);
    Application::EnableVisualStyles();
    
    Comport ^ com1=gcnew Comport ;
    Setuptext^ Stext1;
    MyForm ^ form= gcnew MyForm;
    com1->inicializCOM();
    com1->connect();
    //sp->WriteLine("1234");
    Stext1 = gcnew Setuptext(form, & MyForm::Settextbox1);
    
    Application::Run(form);
    
}
Код windows Form не скидываю там все стандартно. подскажите как мне из метода void DataResivedHandler1(Object^ sender,SerialDataReceivedEventArgs^ e) Отправить информацию в text box
уже столько экспериментировал и делегаты создавал. ЧТО ТО не то написал. (((

Добавлено через 28 минут
да и еще открыл свой эмулятор ком портов Порт открывается но только со скоростью 9600 странно ведь я же задал 19200

Добавлено через 3 часа 4 минуты
ну что никто не подскажет ((( ну может у кого есть исходники где используется событие SerialDataReceivedEventHandler

Добавлено через 16 минут
Думаю надо Threading

Добавлено через 1 час 1 минуту
Формум программистов что никто не знает как из другого класса переменную отправить в textbox

Добавлено через 8 минут
Поправил немного код вот что получилось (с терминалом все работает сообщение отсылает )
main
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
#include "myhed.h"
 
void main (){
    
    
    Application::SetCompatibleTextRenderingDefault(false);
    Application::EnableVisualStyles();
    
    Comport ^ com1=gcnew Comport ;
    Setuptext^ Stext1;
    MyForm ^ form= gcnew MyForm;
    //Thread ^ readThered = gcnew Thread(gcnew ThreadStart(form ,&MyForm::Settextbox1));
    com1->inicializCOM();
    com1->connect();
    form->Settextbox1(com1->indata);
    
    //Stext1 = gcnew Setuptext(form, & MyForm::Settextbox1);
    
    Application::Run(form);
    
}
хедер
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
#include <Windows.h>
 
#include "MyForm.h"
using namespace proj123;
using namespace System::IO::Ports;
using namespace System;
 
using namespace System::Threading;
using namespace System::Text;
using namespace System::Windows::Forms;
 
ref class Comport
{
 
public:
    Comport();
    ~Comport();
     void connect ();
     void disconect();
     void inicializCOM();
    void  DataResivedHandler1(Object^ sender,SerialDataReceivedEventArgs^ e);
    String^ indata;
private:
    SerialPort^ mySeralPort;
    
};
реализация класса Comport

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
#include "myhed.h"
 
 
//using namespace proj123;
//void  DataResivedHandler1(Object^ sender,SerialDataReceivedEventArgs^ e);
void Comport::inicializCOM()
{
    
    mySeralPort = gcnew SerialPort ("COM1");
    mySeralPort->BaudRate =  9600;
    mySeralPort->Parity = Parity::None;
    mySeralPort->StopBits = StopBits::One;
    mySeralPort->DataBits = 8;
    mySeralPort->Handshake = Handshake::None;
    mySeralPort->RtsEnable = false;
    
    mySeralPort->DataReceived +=gcnew SerialDataReceivedEventHandler(this ,&Comport::DataResivedHandler1);
    
    mySeralPort->Open();
    mySeralPort->WriteLine("init com");
}
        void  Comport::DataResivedHandler1(Object^ sender,SerialDataReceivedEventArgs^ e)
{
        mySeralPort = (SerialPort^)sender;
        mySeralPort->NewLine="\r";
        indata = mySeralPort->ReadLine();
        mySeralPort->WriteLine(indata);
        
        
}
 
 
 Comport::Comport()
{
    
}
 
Comport::~Comport()
{
 
}
 
void Comport::connect()
{
    //mySeralPort->Open();
    this-> mySeralPort->WriteLine("33333333333333");
}
 
void Comport::disconect()
{
    mySeralPort->Close();
    
}
Добавлено через 1 минуту
Indata надо отправить в textbox1 который находится в Классе MyForm
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
06.12.2015, 09:46
Ответы с готовыми решениями:

Данные string типа из textBox
String^ str; str=System::Convert::ToString(textBox1-&gt;Text); ...

Данные из textbox сохранить в бд access
Доброго времени суток. Проблема такая, создаю проект С++/CLI в vs 2008 т.к....

Как считать данные из textBox и загнать их в переменную
Надеюсь я там создал тему) Народ помогите с таким вот вопросом: Пытаюсь...

Как оптимально считать данные с множества TextBox'ов?
Вообщем такая ситуация: есть 40 текстбоксов с которых надо вывести числа. То...

Как записать в richTextBox/textBox данные из текстового файла
Ребята,недавно начал работать с Windows Forms Application в Visual Studio на...

14
nmcf
6522 / 5748 / 2619
Регистрация: 14.04.2014
Сообщений: 24,493
06.12.2015, 10:02 2
Сначала создаёшь форму, затем объект твоего класса и через его конструктор передаёшь контекст формы. В классе предусмотреть для этого поле static. DataResivedHandler1() делаешь членом класса Comport, тоже static. И дальше обращаешься к TextBox формы. Как-то так.
1
DVyacheslavN
2 / 2 / 1
Регистрация: 28.11.2015
Сообщений: 105
Завершенные тесты: 1
06.12.2015, 11:55  [ТС] 3
лучше бы написали . сделал но не выходит
0
nmcf
6522 / 5748 / 2619
Регистрация: 14.04.2014
Сообщений: 24,493
06.12.2015, 12:15 4
Что сделал? Показывай актуальный вариант.
0
DVyacheslavN
2 / 2 / 1
Регистрация: 28.11.2015
Сообщений: 105
Завершенные тесты: 1
06.12.2015, 13:34  [ТС] 5
вот как то так )
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
#include "myhed.h"
 
void main (){
    
    
 
    //Setuptext^ Stext1;
    Comport ^ com1=gcnew Comport ;
    
    //Thread ^ readThered = gcnew Thread(gcnew ThreadStart(com1 ,&Comport::connect));
    //form->textBox1->Text=com1->indata;
    //Stext1 = gcnew Setuptext(form, & MyForm::Settextbox1);
    
    
    
}
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
#include "myhed.h"
#include "MyForm.h"
 
void Comport::inicializCOM()
{
    
    mySeralPort = gcnew SerialPort ("COM1");
    mySeralPort->BaudRate =  9600;
    mySeralPort->Parity = Parity::None;
    mySeralPort->StopBits = StopBits::One;
    mySeralPort->DataBits = 8;
    mySeralPort->Handshake = Handshake::None;
    mySeralPort->RtsEnable = false;
    
    mySeralPort->DataReceived +=gcnew SerialDataReceivedEventHandler(DataResivedHandler1);
    
    mySeralPort->Open();
    mySeralPort->WriteLine("init com");
    
 
    
}
     void  Comport::DataResivedHandler1(Object^ sender,SerialDataReceivedEventArgs^ e)
{
        SerialPort ^ mySeralPort = (SerialPort^)sender;
        mySeralPort->NewLine="\r";
        
        indata = mySeralPort->ReadLine();
        mySeralPort->WriteLine(indata);     
}
 
 
 Comport::Comport()
{
    this->inicializCOM();
    Application::SetCompatibleTextRenderingDefault(false);
    Application::EnableVisualStyles();
    form = gcnew MyForm;
    form ->textBox1->Text=indata;
    Application::Run(form);
 
}
 
Comport::~Comport()
{
 
}
 
void Comport::connect()
{
    //mySeralPort->Open();
    this-> mySeralPort->WriteLine("33333333333333");
}
 
void Comport::disconect()
{
    mySeralPort->Close();
    
}
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
#pragma once
#include "MyForm.h"
#include <Windows.h>
using namespace proj123;
using namespace System::IO::Ports;
using namespace System::Threading;
using namespace System::Text;
 
delegate void Stext1 (String ^ str );
 
ref class Comport
{
 
public:
    Comport();
    ~Comport();
     void connect ();
     void disconect();
     void inicializCOM();
     MyForm ^ form;
    static String^ indata;
    static void  DataResivedHandler1(Object^ sender,SerialDataReceivedEventArgs^ e);
private:
    SerialPort^ mySeralPort;
    
};
Добавлено через 10 минут
C++
1
2
3
4
5
6
7
8
9
     void  Comport::DataResivedHandler1(Object^ sender,SerialDataReceivedEventArgs^ e)
{
        SerialPort ^ mySeralPort = (SerialPort^)sender;
        mySeralPort->NewLine="\r";
        
        indata = mySeralPort->ReadLine();
        mySeralPort->WriteLine(indata);     
        form ->Settextbox1(indata);
}
сделал так ругается на потоки (не из того потока вызвал где создан Form)
0
nmcf
6522 / 5748 / 2619
Регистрация: 14.04.2014
Сообщений: 24,493
06.12.2015, 16:36 6
Принципиально использовать С++/CLI? Много проблем возникает из-за самого языка.
0
DVyacheslavN
2 / 2 / 1
Регистрация: 28.11.2015
Сообщений: 105
Завершенные тесты: 1
07.12.2015, 19:51  [ТС] 7
да наврятли тут нужен делигат и invoke только куда его тут писать
0
sammanta
3 / 3 / 0
Регистрация: 31.05.2015
Сообщений: 58
Завершенные тесты: 1
08.12.2015, 13:04 8
1.Добавь на форму richTextBox1 ну или просто текст бокс
C++ (Qt)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
    private: System::Void serialPort1_DataReceived(System::Object^  sender, System::IO::Ports::SerialDataReceivedEventArgs^  e) {
                 String^ message = serialPort1->ReadLine();//выводим строку символов из порта в строку message
 
                 
                 
                 unsigned char data0, data1, data2  ; //создаем две локальные переменные дл¤ копировани¤ в них значени¤ из приемного буффера
 
 
 //от устройства читаем 4 байта байта, под первый переменную не выдел¤ем-не нужно
if (serialPort1->ReadByte()==99) {// первый байт как идентификационный если он соответсвует данному значению, то выполн¤ем условие      
data0=serialPort1->ReadByte();//читаем и копируем ќЖ’»Ќ байт в переменную
data1=serialPort1->ReadByte(); //читаем и копируем ќЖ’»Ќ байт в переменную
data2=serialPort1->ReadByte(); //читаем и копируем ќЖ’»Ќ байт в переменную
//data3=serialPort1->ReadByte(); //читаем и копируем ќЖ’»Ќ байт в переменную
richTextBox1->Text =Convert::ToString(message )+"\n"+ Convert::ToString(data0)+":"+Convert::ToString(data1)+":"+Convert::ToString(data2);//выодим все переменные в richTextBox1
}
             }
Добавлено через 7 минут
недавно писал проект. добавил отдельный поток под запись данных в устройство.
Нужен ли отдельный поток для чтения из устройства-не совсем в этом уверен, работало и так отлично. но я оперировал ограниченным количеством байт (как в примере) . Если честно, то на запись и на чтение и без доп потоков работало нормально. Для потоков хороший компонент панели элементов-BackgroundWorker

Добавлено через 5 минут
C++ (Qt)
1
  String^ message = serialPort1->ReadLine();//
это просто строка символов (какое то там слово, не помню какое) выводил в отдельный текст бокс или лэйбл( не помню). Собственно проверял запись/чтение символов и числовых значений. если будешь проверять добавь компонент или в тот же richTextBox1 отправляй.
Все работало!

Добавлено через 7 минут
Между прочим тему надо в C++/CLI Windows Forms было создавать
0
DVyacheslavN
2 / 2 / 1
Регистрация: 28.11.2015
Сообщений: 105
Завершенные тесты: 1
10.12.2015, 13:06  [ТС] 9
Победил Всем СПАСИБО, помог коллега с работы, ему очень признателен,
оказывается все проще паренной репы
Это маин.
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
#include "myhed.h"
 
void main (){
    
    
 
    
    Comport ^ com1=gcnew Comport ;
    
    //Thread ^ readThered = gcnew Thread(gcnew ThreadStart( ,&Comport::connect));
    //form->textBox1->Text=com1->indata;
 
    
    
    
}
вот хедер
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
#pragma once
#include "MyForm.h"
#include <Windows.h>
using namespace proj123;
using namespace System::IO::Ports;
using namespace System::Threading;
using namespace System::Text;
 
 
ref class Comport
{
 
public:
delegate void SetTextComport(String ^ text);
    Comport();
    ~Comport();
    void connect ();
    void disconect();
    void inicializCOM();
    static MyForm ^ form;
    static String^ indata;
    static void  DataResivedHandler1(Object^ sender,SerialDataReceivedEventArgs^ e);
    static void Settext (String ^ str);
    
private:
    SerialPort^ mySeralPort;
    
};
вот реализация методов класса comport
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
#include "myhed.h"
#include "MyForm.h"
 
 
void Comport::inicializCOM()
{
    
    mySeralPort = gcnew SerialPort ("COM1");
    mySeralPort->BaudRate =  9600;
    mySeralPort->Parity = Parity::None;
    mySeralPort->StopBits = StopBits::One;
    mySeralPort->DataBits = 8;
    mySeralPort->Handshake = Handshake::None;
    mySeralPort->RtsEnable = false;
    
    mySeralPort->DataReceived +=gcnew SerialDataReceivedEventHandler(DataResivedHandler1);
    
    mySeralPort->Open();
    mySeralPort->WriteLine("init com");
 
    
}
     void  Comport::DataResivedHandler1(Object^ sender,SerialDataReceivedEventArgs^ e)
{
        SerialPort ^ mySeralPort = (SerialPort^)sender;
        mySeralPort->NewLine="\r";
        
        indata = mySeralPort->ReadLine();
        mySeralPort->WriteLine(indata); 
        form->Invoke(form->d, indata);
        
 
 
        //Settext(indata);
}
 
 
 Comport::Comport()
{
    SetTextComport^ COMPORT1; 
    this->inicializCOM();
    Application::SetCompatibleTextRenderingDefault(false);
    Application::EnableVisualStyles();
    form = gcnew MyForm;
 
    //Stext12 = gcnew Setuptext(form, & MyForm::Settextbox1(indata));
    Application::Run(form);
 
}
 
Comport::~Comport()
{
 
}
 
void Comport::connect()
{
    //mySeralPort->Open();
    this-> mySeralPort->WriteLine("33333333333333");
}
 
void Comport::disconect()
{
    mySeralPort->Close();
    
}
 
 void Comport::Settext(String ^ str)
        {
 
            
                
            
            if (form->textBox1->InvokeRequired)
            {
              
            }
            else
            {
                 form->textBox1->Text=str; 
                
            }
        }
вот form
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
#pragma once
 
namespace proj123 {
    
    using namespace System;
    using namespace System::ComponentModel;
    using namespace System::Collections;
    using namespace System::Windows::Forms;
    using namespace System::Data;
    using namespace System::Drawing;
    
    
    /// <summary>
    /// Сводка для MyForm
    /// </summary>
    public ref class MyForm : public System::Windows::Forms::Form
    {
        
    public:
        delegate void SetVoidDelegate(String ^ textfromcom);
        SetVoidDelegate^ d;
    //  void ChangeText(String ^ textfromcom);
 
        MyForm(void)
        {
            d = gcnew SetVoidDelegate(this, &MyForm::ChangeText);
 
        
            InitializeComponent();
            
            //
            //TODO: добавьте код конструктора
            //
        }
 
    protected:
        /// <summary>
        /// Освободить все используемые ресурсы.
        /// </summary>
        ~MyForm()
        {
            if (components)
            {
                delete components;
            }
        }
    private: System::Windows::Forms::Button^  button1;
    protected: 
    public: System::Windows::Forms::TextBox^  textBox1;
    private: System::Windows::Forms::Button^  button2;
 
    private: System::ComponentModel::IContainer^  components;
 
    private:
        /// <summary>
        /// Требуется переменная конструктора.
        /// </summary>
 
    public: System::Void ChangeText(String ^ textfromcom)
    {
      textBox1->Text = textfromcom;
    }
 
 
#pragma region Windows Form Designer generated code
        /// <summary>
        /// Обязательный метод для поддержки конструктора - не изменяйте
        /// содержимое данного метода при помощи редактора кода.
        /// </summary>
        void InitializeComponent(void)
        {
            this->button1 = (gcnew System::Windows::Forms::Button());
            this->textBox1 = (gcnew System::Windows::Forms::TextBox());
            this->button2 = (gcnew System::Windows::Forms::Button());
            this->SuspendLayout();
            // 
            // button1
            // 
            this->button1->Location = System::Drawing::Point(176, 13);
            this->button1->Name = L"button1";
            this->button1->Size = System::Drawing::Size(75, 23);
            this->button1->TabIndex = 0;
            this->button1->Text = L"Connect";
            this->button1->UseVisualStyleBackColor = true;
            this->button1->Click += gcnew System::EventHandler(this, &MyForm::button1_Click);
            // 
            // textBox1
            // 
            this->textBox1->Location = System::Drawing::Point(25, 13);
            this->textBox1->Name = L"textBox1";
            this->textBox1->Size = System::Drawing::Size(100, 20);
            this->textBox1->TabIndex = 1;
            this->textBox1->TextChanged += gcnew System::EventHandler(this, &MyForm::textBox1_TextChanged);
 
 
            // 
            // button2
            // 
            this->button2->Location = System::Drawing::Point(176, 43);
            this->button2->Name = L"button2";
            this->button2->Size = System::Drawing::Size(75, 23);
            this->button2->TabIndex = 2;
            this->button2->Text = L"dizconect";
            this->button2->UseVisualStyleBackColor = true;
            this->button2->Click += gcnew System::EventHandler(this, &MyForm::button2_Click);
            // 
            // MyForm
            // 
            this->AutoScaleDimensions = System::Drawing::SizeF(6, 13);
            this->AutoScaleMode = System::Windows::Forms::AutoScaleMode::Font;
            this->ClientSize = System::Drawing::Size(284, 262);
            this->Controls->Add(this->button2);
            this->Controls->Add(this->textBox1);
            this->Controls->Add(this->button1);
            this->Name = L"MyForm";
            this->Text = L"MyForm";
            this->Load += gcnew System::EventHandler(this, &MyForm::MyForm_Load);
            this->ResumeLayout(false);
            this->PerformLayout();
 
        }
#pragma endregion
 
 
    private: System::Void MyForm_Load(System::Object^  sender, System::EventArgs^  e) {
             }
    private: System::Void textBox1_TextChanged(System::Object^  sender, System::EventArgs^  e) {
 
             }
 
    public: static void Settextbox1 (String ^ str) {
                
                // textBox1->Text=str;
             }
    private: System::Void button1_Click(System::Object^  sender, System::EventArgs^  e) {
        
        
             }
    private: System::Void button2_Click(System::Object^  sender, System::EventArgs^  e) {
                
             }
};
}
Добавлено через 7 минут
если кому интересно расскажу.
0
nmcf
6522 / 5748 / 2619
Регистрация: 14.04.2014
Сообщений: 24,493
10.12.2015, 13:26 10
Расскажи. Как у тебя класс видит форму и где всё остальное в main().
0
sammanta
3 / 3 / 0
Регистрация: 31.05.2015
Сообщений: 58
Завершенные тесты: 1
11.12.2015, 09:17 11
Зачем класс то свой надо было создавать?
Кинул бы на форму компонент сериал порт и все бы у тебя в пределах класса формы существовало
0
DVyacheslavN
2 / 2 / 1
Регистрация: 28.11.2015
Сообщений: 105
Завершенные тесты: 1
11.12.2015, 21:12  [ТС] 12
Клас видит форму потому что в хедере есть
C++
1
 static MyForm ^ form;
создал объект и все . А на счет зачем все это, чтобы программа была проще для понимания и изменения , тем более во многих книжках С++ ООП написано что код надо раскидывать по разным файлам (не бездумно конечно) так намного проще работать .

Добавлено через 11 минут
Забыл про майн сказать в нем нечего не надо достаточно
C++
1
Comport ^ com1=gcnew Comport
эта сточка создает объект класса и выделяет под него память, в объекте запускается конструктор вот он
C++
1
2
3
4
5
6
7
8
9
10
11
12
 Comport::Comport()
{
    SetTextComport^ COMPORT1; 
    this->inicializCOM();
    Application::SetCompatibleTextRenderingDefault(false);
    Application::EnableVisualStyles();
    form = gcnew MyForm;
 
    //Stext12 = gcnew Setuptext(form, & MyForm::Settextbox1(indata));
    Application::Run(form);
 
}
который задает начальные параметры.
0
DVyacheslavN
2 / 2 / 1
Регистрация: 28.11.2015
Сообщений: 105
Завершенные тесты: 1
14.12.2015, 09:12  [ТС] 13
Пойду разбираться с Modbus на микроконтроллере уже давно написана прошивка с модбасом валяется без дела !
0
nmcf
6522 / 5748 / 2619
Регистрация: 14.04.2014
Сообщений: 24,493
20.12.2015, 11:48 14
Т. е. у тебя Comport - это и есть всё приложение?
0
DVyacheslavN
2 / 2 / 1
Регистрация: 28.11.2015
Сообщений: 105
Завершенные тесты: 1
21.12.2015, 17:09  [ТС] 15
да )
0
21.12.2015, 17:09
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
21.12.2015, 17:09

Как в C++ ввести данные в базу через textBox база сделана на sql server
http://www.cyberforum.ru/attachment.php?attachmentid=831446&amp;stc=1&amp;d=1494609338...

Как отправить данные с textBox на эл.-почту?
Как отправить данные с textBox на эл.-почту? Заранее спасибо!

Отправить данные из Label и TextBox на E-mail без сторонних программ
Всем привет! Перечитал кучу схожих тем и не смог разобраться как реализовать....


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

Или воспользуйтесь поиском по форуму:
15
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2019, vBulletin Solutions, Inc.
Рейтинг@Mail.ru