0 / 0 / 0
Регистрация: 03.11.2012
Сообщений: 13

Калькулятор Buidler

02.06.2013, 08:44. Показов 2709. Ответов 6
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Вообщем я сделал калькулятор, с помощью TmainMenu переключаюсь в какой режим мне нужно, либо в обычный либо в инженерный, нужно сделать следующие если вышел в режиме инженерный то когда запустил обратно калькулятор запустился в режиме инженерного, и также чтобы бы было если вышел в режиме обычного
Вложения
Тип файла: rar Kurs3.rar (337.0 Кб, 76 просмотров)
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
02.06.2013, 08:44
Ответы с готовыми решениями:

Код c Delphi переделать под C++ Buidler
Ребят, помогите пожалуйста ! Короче дана прога для работы с матрицами (Код на Delphi). Мне нужно переделать этот код чтоб он работал на...

Как преобразовать обычный калькулятор в калькулятор использующий класс стек?
#include <iostream> int main(){ int a = 0; int b = 0; char operation; std::cout << "Enter first number: "; ...

Простой калькулятор и калькулятор с парсингом
Ребят я совсем не давно только начал изучать сишку, решил написать простенький калькулятор который работает с 2 числами. Возник вопрос, как...

6
 Аватар для cpp_developer
20124 / 5691 / 417
Регистрация: 09.04.2010
Сообщений: 22,546
Записей в блоге: 1
02.06.2013, 09:23
сохраняйте состояние кулькулятора при выходе в реестр
Работа с реестром в C++ Builder
или в ИНИ
INI - Загрузка и сохранение настроек,
загружайте предыдущее состояние кулькулятора из реестра или ИНИ при запуске приложения.
1
0 / 0 / 0
Регистрация: 03.11.2012
Сообщений: 13
02.06.2013, 10:01  [ТС]
можете примерно написать как это будет выглядеть в коде?
0
 Аватар для cpp_developer
20124 / 5691 / 417
Регистрация: 09.04.2010
Сообщений: 22,546
Записей в блоге: 1
02.06.2013, 10:15
Цитата Сообщение от JoQees Посмотреть сообщение
как это будет выглядеть в коде
- относительно ИНИ я написал в теме INI - Загрузка и сохранение настроек , а относительно реестра - уважаемый NiTan в теме Работа с реестром в C++ Builder , читатете, делаете, спрашиваете, если что-нибудь не получается
0
 Аватар для cpp_developer
20124 / 5691 / 417
Регистрация: 09.04.2010
Сообщений: 22,546
Записей в блоге: 1
02.06.2013, 10:30
Кроме того, выкладывая проект, делаете так, как написано здесь:
Компиляция программы под С++ Builder, чтобы работала на других компьютерах
дабы избежать этого:
Калькулятор Buidler

А также, в вашем проекте не хватает самых важных файлов (возможно, у вас они именуются по-другому):
Unit1.cpp
Unit1.dfm
Unit1.h
, вполне возможно, и еще каких-нибудь других, а я сильно сомневаюсь, что кто-нибудь, даже при резко выраженном желании показать,
Цитата Сообщение от JoQees Посмотреть сообщение
как это будет выглядеть в коде
, будет воссоздавать с нуля ваш супер-пупер калькулятор.
0
 Аватар для cpp_developer
20124 / 5691 / 417
Регистрация: 09.04.2010
Сообщений: 22,546
Записей в блоге: 1
02.06.2013, 12:44

Не по теме:

эх, маладьошшшь


Для начала предположим, что:
1. форма с калькулятором у вас находится в Unit.cpp
2. обычный калькулятор (дадим ему кличку "simple") запускается нажатием Button1
3. инженерный калькулятор (дадим ему кличку "full") запускается нажатием Button2

Далее делаем необходимые махинации.
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
//---------------------------------------------------------------------------
 
#include <vcl.h>
#pragma hdrstop
#include "IniFiles.hpp" // подключаем: модуль IniFiles
 
#include "Unit1.h"
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma resource "*.dfm"
TForm1 *Form1;
 
// наш файли ИНИ будет размещаться в папке приложения
// дадим файлу ИНИ имя "options.ini"
AnsiString sIniFile = IncludeTrailingPathDelimiter(
                      ExtractFilePath(Application->ExeName))+
                      "options.ini";
// объявим глобальную строковую переменную режима калькулятора
AnsiString sCalcMode;
// создадим обьект класса TIniFile, назовем его Ini
TIniFile *Ini = new TIniFile(sIniFile);
 
//---------------------------------------------------------------------------
__fastcall TForm1::TForm1(TComponent* Owner)
  : TForm(Owner)
{
//  ShowMessage(sIniFile); // можем проверить путь
  Label1->Font->Size = 12;
  Label1->Font->Color = clRed;
  Label1->Caption = "";
}
//---------------------------------------------------------------------------
void __fastcall TForm1::FormShow(TObject *Sender)
{
// считываем в переменную режим калькулятора из файла ИНИ
  sCalcMode = Ini->ReadString("Mode","CalcMode",sCalcMode);
// пытаемся что-нибудь запустить
  if (sCalcMode == "simple") {
    Label1->Caption = "Обычный калькулятор"; // просто проверка
    Button1Click(Sender);
  }
  else if (sCalcMode == "full") {
    Label1->Caption = "Инженерный калькулятор"; // просто проверка
    Button2Click(Sender);
  }
}
//---------------------------------------------------------------------------
void __fastcall TForm1::FormDestroy(TObject *Sender)
{
// и, как порядочные люди, убираем за собой при разрушении формы
  delete Ini; // удаляем объект
}
//---------------------------------------------------------------------------
void __fastcall TForm1::Button1Click(TObject *Sender)
{
// далее, при открытии обычного калькулятора,
// присвоим соответствующее значение переменной
  sCalcMode = "simple";
// и запишем это состояние в секцию "Mode" в файлt ини
  Ini->WriteString("Mode","CalcMode",sCalcMode);
  ShowMessage("Проверка нажатия Button1, в т.ч., при запуске программы"); // просто проверка
// ваш код открытия калькулятора в обычном режиме
// ...
}
//---------------------------------------------------------------------------
void __fastcall TForm1::Button2Click(TObject *Sender)
{
// аналогично для Button2
// при открытии инженерного калькулятора,
// присвоим соответствующее значение переменной
  sCalcMode = "full";
// и запишем это состояние в секцию "Mode" в файлt ини
  Ini->WriteString("Mode","CalcMode",sCalcMode);
  ShowMessage("Проверка нажатия Button2, в т.ч., при запуске программы"); // просто проверка
// ваш код открытия калькулятора в инженерном режиме
// ...
}
//---------------------------------------------------------------------------
схема, не для копипейста,
консультации и техническая поддержка не предоставляются


Во вложении - проект RAD XE, но при переносе кода в Builder6, в данном случае, это значения не имеет.
Миниатюры
Калькулятор Buidler   Калькулятор Buidler   Калькулятор Buidler  

Калькулятор Buidler  
Вложения
Тип файла: zip UsingINI.zip (612.4 Кб, 56 просмотров)
0
 Аватар для cpp_developer
20124 / 5691 / 417
Регистрация: 09.04.2010
Сообщений: 22,546
Записей в блоге: 1
02.06.2013, 14:28
пардон,

1. форма с калькулятором у вас находится в Unit1.cpp
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
02.06.2013, 14:28
Помогаю со студенческими работами здесь

Калькулятор
Доброго времени суток Уважаемые форумчане! Довелось как-то мне изображать в БД &quot;Калькулятор&quot;. Всё-бы ничего, да вот только...

Калькулятор
Калькулятор хотел создать на Дельфи не получается я новичок еще помагите пожалуйста

Калькулятор
Подскажите, что мне сделать с операндом Result чтобы функция main запускалась заново после того как есть Result. #include...

Калькулятор
Не встречали готовые решения такого калькулятора Что то в нете не нашел

Калькулятор
Не могу понять как работает javascript в коде HTML может чего- то забыл написать... А точнее не работает кнопка Back Space в...


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

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

Новые блоги и статьи
Компиляция C++ с Clang API
NullReferenced 24.03.2025
Компиляторы обычно воспринимаются как черные ящики, которые превращают исходный код в исполняемые файлы. Мы запускаем компилятор командой в терминале, и вуаля — получаем бинарник. Но что если нужно. . .
Многопоточное программировани­е в C#: Класс Thread
UnmanagedCoder 24.03.2025
Когда запускается приложение на компьютере, операционная система создаёт для него процесс - виртуальное адресное пространство. В C# этот процесс изначально получает один поток выполнения — главный. . .
SwiftUI Data Flow: Передача данных между представлениями
mobDevWorks 23.03.2025
При первом знакомстве со SwiftUI кажется, что фреймворк предлагает избыточное количество механизмов для передачи данных: @State, @Binding, @StateObject, @ObservedObject, @EnvironmentObject и другие. . . .
Моки в Java: Сравниваем Mockito, EasyMock, JMockit
Javaican 23.03.2025
Как протестировать класс, который зависит от других сложных компонентов, таких как базы данных, веб-сервисы или другие классы, с которыми и так непросто работать в тестовом окружении? Для этого и. . .
Архитектурные паттерны микросервисов: ТОП-10 шаблонов
ArchitectMsa 22.03.2025
Популярность микросервисной архитектуры объясняется множеством важных преимуществ. К примеру, она позволяет командам разработчиков работать независимо друг от друга, используя различные технологии и. . .
Оптимизация рендеринга в Unity: Сортировка миллиона спрайтов
GameUnited 22.03.2025
Помните, когда наличие сотни спрайтов в игре приводило к существенному падению производительности? Время таких ограничений уходит в прошлое. Сегодня геймдев сталкивается с задачами совершенно иного. . .
Образование и практика
Igor3D 21.03.2025
Добрый день А вот каково качество/ эффективность ВУЗовского образования? Аналитическая геометрия изучается в первом семестре и считается довольно легким курсом, что вполне справедливо. Ну хорошо,. . .
Lazarus. Таблица с объединением ячеек.
Massaraksh7 21.03.2025
Понадобилась представление на экране таблицы с объединёнными ячейками. И не одной, а штук триста, и все разные. На Delphi я использовал для этих целей TStringGrid, и то, кривовато получалось. А в. . .
Async/await в Swift: Асинхронное программировани­е в iOS
mobDevWorks 20.03.2025
Асинхронное программирование долго было одной из самых сложных задач для разработчиков iOS. В течение многих лет мы сражались с замыканиями, диспетчеризацией очередей и обратными вызовами, чтобы. . .
Колмогоровская сложность: Приёмы упрощения кода
ArchitectMsa 20.03.2025
Наверное, каждый программист хотя бы раз сталкивался с кодом, который напоминает запутанный лабиринт — чем дальше в него погружаешься, тем сложнее найти выход. И когда мы говорим о сложности кода, мы. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru