Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > C/C++ программирование > C++ Builder
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 15.03.2016, 21:25   #1
OstapBender222
Новичок
Джуниор
 
Регистрация: 15.03.2016
Сообщений: 6
По умолчанию Не могу вывести результат в ячейку Edit

Пишу довольно интересную программу, с довольно длинным кодом для расчета. Пишу ее в Bulder 6 C++. В итоге столкнулся с такой проблемой. Работа происходит между несколькими формами. Застрял на том что не могу вывести результат в ячейку Edit. Перепробовал уже все возможные методы однако ничего не помогло. вот код данной формы:
Код:
#include <vcl.h>
#include <math.h>
#pragma hdrstop
#include "Unit9.h"
#include "Unit8.h"
#include "Unit10.h"
#include "Unit7.h"
#include "Unit4.h"
#include "Unit11.h"
#pragma package(smart_init)
#pragma link "acPNG"
#pragma resource "*.dfm"
TForm9 *Form9;

__fastcall TForm9::TForm9(TComponent* Owner)
        : TForm(Owner)
{
}

void __fastcall TForm9::Button1Click(TObject *Sender)
{
Form9->Hide();
Form8->Show();
}

void __fastcall TForm9::Edit_fKeyPress(TObject *Sender, char &Key)
{
if ((Key>='0')&&(Key<='9'))
return;
if ( Key== DecimalSeparator)
{
if ((Edit_f->Text).Pos(DecimalSeparator) !=0)
Key=0;
return;
}
if (Key==VK_BACK)
return;
if( Key ==VK_RETURN)
{
Button2->SetFocus();
return;
}
Key=0;
}

void __fastcall TForm9::Button2Click(TObject *Sender)
{
Form9->Hide();
Form10->Show();
float S,H,L,P,f,a,b,c,d,h,l,k,P1,P2,P3,P4,Fsl,Pt1,Pt2,Pt3,Pt4,Po,C;
L=StrToFloat(Form7->Edit_L->Text);
S=StrToFloat(Form7->Edit_S->Text);
H=StrToFloat(Form7->Edit_H->Text);
P=StrToFloat(Form7->Edit_P->Text);
f=StrToFloat(Edit_f->Text);
a=StrToFloat(Edit_a->Text);
b=StrToFloat(Edit_b->Text);
c=StrToFloat(Edit_c->Text);
d=StrToFloat(Edit_d->Text);
h=StrToFloat(Edit_h->Text);
l=StrToFloat(Edit_l->Text);
k=StrToFloat(Edit_k->Text);
if (Form4->ComboBox1->ItemIndex == 0) {
Fsl=1.5;} else
{
if (Form4->ComboBox1->ItemIndex == 1) {
Fsl=2.5;} else
{
if (Form4->ComboBox1->ItemIndex == 2) {
Fsl=3.5;} else
{
Fsl=4.5;
}
if(RadioButton1->Checked==true)
{
P1=((S*H*L*P)/4)+(f/4)+((f*a)/(2*c))+((f*b)/2*d);
P2=((S*H*L*P)/4)+(f/4)+((f*a)/(2*c))-((f*b)/2*d);
P3=((S*H*L*P)/4)+(f/4)-((f*a)/(2*c))+((f*b)/2*d);
P4=((S*H*L*P)/4)+(f/4)-((f*a)/(2*c))-((f*b)/2*d);
}
else
{
if(RadioButton2->Checked==true)
{
P1=((S*H*L*P)/4)+(f/4)+((f*a)/(2*c))+((f*b)/(2*d));
P2=((S*H*L*P)/4)+(f/4)+((f*a)/(2*c))-((f*b)/(2*d));
P3=((S*H*L*P)/4)+(f/4)-((f*a)/(2*c))+((f*b)/(2*d));
P4=((S*H*L*P)/4)+(f/4)-((f*a)/(2*c))-((f*b)/(2*d));
}
else
{
if(RadioButton3->Checked==true)
{
P1=((S*H*L*P)/4)-((f*l)/(2*d));
P2=((S*H*L*P)/4)+((f*l)/(2*d));
P3=((S*H*L*P)/4)-((f*l)/(2*d));
P4=((S*H*L*P)/4)+((f*l)/(2*d));
}
else
{
if(RadioButton4->Checked==true)
{
P1=-((S*H*L*P*h)/(2*d))+((f*l)/(2*d));
P2=-((S*H*L*P*h)/(2*d))+((f*l)/(2*d));
P3=-((S*H*L*P*h)/(2*d))+((f*l)/(2*d));
P4=-((S*H*L*P*h)/(2*d))+((f*l)/(2*d));
}
else
{
P1=-((S*H*L*P*h)/(2*c))-((f*l)/(2*c));
P2=-((S*H*L*P*h)/(2*c))-((f*l)/(2*c));
P3=-((S*H*L*P*h)/(2*c))-((f*l)/(2*c));
P4=-((S*H*L*P*h)/(2*c))-((f*l)/(2*c));
Pt1=((S*H*L*P)/4)+(f/4)+((f*k)/(2*d));
Pt2=((S*H*L*P)/4)+(f/4)-((f*k)/(2*d));
Pt3=((S*H*L*P)/4)+(f/4)+((f*k)/(2*d));
Pt4=((S*H*L*P)/4)+(f/4)-((f*k)/(2*d));
Po=P1+P2+P3+P4+Pt1+Pt2+Pt3+Pt4;}
C=Po*Fsl;
Form11->Edit4->Text=C;
}
}
}
}
}
}
Кроосспост в помощи студентам удалил. Следующий раз будет карточка
Кнопка # для оформления кода
Модератор

Последний раз редактировалось Аватар; 16.03.2016 в 16:50.
OstapBender222 вне форума Ответить с цитированием
Старый 16.03.2016, 05:25   #2
phomm
personality
Старожил
 
Аватар для phomm
 
Регистрация: 28.04.2009
Сообщений: 2,882
По умолчанию

Код:
Form11->Edit4->Text=FloatToStr(C);
Не забываем оформлять код кнопочкой # в форме написания.

Последний раз редактировалось phomm; 16.03.2016 в 05:28.
phomm вне форума Ответить с цитированием
Старый 16.03.2016, 16:38   #3
OstapBender222
Новичок
Джуниор
 
Регистрация: 15.03.2016
Сообщений: 6
По умолчанию

Я уже пробовал данную функцию в итоге получается что программа запускается но после ввода данных результат в ячейку не выводится
OstapBender222 вне форума Ответить с цитированием
Старый 16.03.2016, 21:39   #4
phomm
personality
Старожил
 
Аватар для phomm
 
Регистрация: 28.04.2009
Сообщений: 2,882
По умолчанию

Значит команда вывода вложена в такую ветку в Вашем "дереве ифов", которая не выполняется. Отформатируйте код отступами. будет представление что куда, проверьте условия в ифах (чтобы были на форме отмечены нужные компоненты), можете пройтись пошаговой отладкой, увидите наглядно.
Ошибка в самом Вашем алгоритме, а не в коде или т.п.
phomm вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
не могу вывести результат запроса mysql (show tables) wanes101 PHP 5 11.07.2012 06:06
не могу вывести результат в другую форму wrangler Общие вопросы C/C++ 4 21.12.2009 16:34
SQLite3. Не могу вывести результат запроса. Clever Общие вопросы C/C++ 2 25.02.2009 09:55
Не могу понять как надо ч/з форму вывести результат на лист и еще связать с другим листом данных Aliyushka Microsoft Office Excel 28 16.01.2009 19:44