Форум программистов, компьютерный форум, киберфорум
C++ Builder
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.57/7: Рейтинг темы: голосов - 7, средняя оценка - 4.57
0 / 0 / 0
Регистрация: 13.03.2014
Сообщений: 15

Из Delphi в C++ Builder. Маленький листинг

15.05.2014, 02:07. Показов 1495. Ответов 4
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Здравствуйте, только начинаю работать на builder. Хотелось бы помощи от вас. Нужно этот листинг перевести. Листинг довольно не крупный. Спасибо за внимание.
Delphi
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
var
  Form1: TForm1;
  date1: TDateTime;
  i: integer;
 
implementation
 
{$R *.dfm}
 
procedure TForm1.Button1Click(Sender: TObject);
begin
date1:=MonthCalendar1.Date;
i:=0;
while date1>StrToDate(ListBox1.Items[i])
do i:=i+1;
ListBox1.Items.Insert(i,DateToStr(date1));
ListBox2.Items.Insert(i,Edit1.Text);
end;
 
procedure TForm1.FormClose(Sender: TObject; var Action: TCloseAction);
begin
ListBox1.Items.SaveToFile('C:\Users\1.txt');
ListBox2.Items.SaveToFile('C:\Users\2.txt');
end;
 
procedure TForm1.FormCreate(Sender: TObject);
begin
ListBox1.Items.LoadFromFile('C:\Users\2.txt');
ListBox2.Items.LoadFromFile('C:\Users\1.txt');
i:=0;
while i < ListBox1.Items.Count-1 do
begin
if StrToDate(ListBox1.Items[i])<=Date then begin;
ListBox3.Items.Add(ListBox2.Items[i]);
end;
i:=i+1;
end;
end;
end.
Добавлено через 2 часа 57 минут
мне непонятно в основном как перевести:
Delphi
1
2
3
4
5
begin
date1:=MonthCalendar1.Date;
i:=0;
while date1>StrToDate(ListBox1.Items[i])
do i:=i+1;
и это:
Delphi
1
2
3
4
5
6
7
8
i:=0;
while i < ListBox1.Items.Count-1 do
begin
if StrToDate(ListBox1.Items[i])<=Date then begin;
ListBox3.Items.Add(ListBox2.Items[i]);
end;
i:=i+1;
end;
в остальном вроде бы разобрался
0
Лучшие ответы (1)
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
15.05.2014, 02:07
Ответы с готовыми решениями:

Листинг на delphi
У меня есть только листинг на delphi как его преобразовать в рабочую программу? вот листинг unit Unit3222; interface ...

Листинг программы Delphi
Помогите имеется исходный код нужно собрать и запустить программу unit Biblioteka; interface uses SysUtils, Dialogs...

Маленький тест на delphi 7
Помогите пожалуйста создать тест. Т.е. уже будут готовые варианты ответов нам даны, нам только нужно будет отметить их c помощью checkbox и...

4
Супер-модератор
Эксперт Pascal/DelphiАвтор FAQ
 Аватар для volvo
33400 / 21510 / 8236
Регистрация: 22.10.2011
Сообщений: 36,910
Записей в блоге: 12
15.05.2014, 02:23
Лучший ответ Сообщение было отмечено 14maff как решение

Решение

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
TDateTime date1;
int i;
 
void __fastcall TForm1::Button1Click(TObject *Sender)
{
    date1 = MonthCalendar1->Date;
    i = 0;
    while (date1 > StrToDate(ListBox1->Items->Strings[i])) i += 1;
    ListBox1->Items->Insert(i, DateToStr(date1));
    ListBox2->Items->Insert(i, Edit1->Text);
}
 
void __fastcall TForm1::FormCreate(TObject *Sender)
{
    ListBox1->Items->LoadFromFile("C:\\Users\\2.txt");
    ListBox2->Items->LoadFromFile("C:\\Users\\1.txt");
    i = 0;
    while (i < ListBox1->Items->Count - 1)
    {
        if (StrToDate(ListBox1->Items->Strings[i]) <= Date())
            ListBox3->Items->Add(ListBox2->Items->Strings[i]);
        i += 1;
    }
}
 
// ---------------------------------------------------------------------------
void __fastcall TForm1::FormClose(TObject *Sender, TCloseAction &Action)
{
    ListBox1->Items->SaveToFile("C:\\Users\\2.txt");
    ListBox2->Items->SaveToFile("C:\\Users\\1.txt");
}
, по крайней мере компиляцию проходит успешно...
0
 Аватар для Dostik
38 / 38 / 4
Регистрация: 31.05.2011
Сообщений: 580
15.05.2014, 14:33
При компиляции в Embarcadero ошибок нет, но когда нажимаешь на кнопку... вуаля EConvertError "" is not a valid date
я так понимаю что ошибка происходит из за плавающей точки, тогда я решил жестко задать
C++
1
FormatSettings.DecimalSeparator = '.';
точку, хотя пробовал и "," и "/" может я чего не понял ? разьясните пожалуйста мне !
0
Супер-модератор
Эксперт Pascal/DelphiАвтор FAQ
 Аватар для volvo
33400 / 21510 / 8236
Регистрация: 22.10.2011
Сообщений: 36,910
Записей в блоге: 12
15.05.2014, 15:12
При чем тут DecimalSeparator? Сообщение об ошибке же прямым текстом говорит: "Пустая строка не является валидной датой". Прежде чем нажимать на кнопку, надо заполнить файлы 1.txt и 2.txt корректными представлениями дат, а не пустыми строками.

А вообще - без поставленной задачи, без цели, переводить что-то с одного языка на другой - себе дороже. Файлов для проверки у меня не было, так что если они содержат не ту информацию, которой от них ждет программа - то еще и не раз вылетит...
1
 Аватар для Dostik
38 / 38 / 4
Регистрация: 31.05.2011
Сообщений: 580
15.05.2014, 15:35

Не по теме:

Спасибо теперь понятнее

просто я написал:
C++
1
2
3
4
5
date1 = MonthCalendar1->Date;
    i = 0;
    while (date1 > StrToDate(ListBox1->Items->Strings[i])) i += 1;
    ListBox1->Items->Insert(i, DateToStr(date1));
    ListBox2->Items->Insert(i, Edit1->Text);
а само условие не уловил ((( Еще раз спасибо за разъяснение
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
15.05.2014, 15:35
Помогаю со студенческими работами здесь

маленький кроссворд в delphi
необходимо создать кроссорд, который состоит из 4 слов, каждое слово - 5 букв. необходимо чтоб выбиралось слово и нажимая на кнопку...

Cамый краткий листинг - самый подробный листинг.
Здравствуйте. Надо провести трансляцию программы SIMPLE.ASM с использованием TASM.EXE и получите: 1) самый краткий листинг; 2) самый...

Перевести маленький проект с Delphi
Здравствуйте. Имеется маленький проект на Delphi, простая программка, которая используя текстовые данные печатает несколько документов....

Перевести маленький код Delphi 7 в php
NC := char(integer(Stable)]) xor (StartKey shr 8)); Result := Result + IntToHex(byte(NC), 2); StartKey := (integer(nc) + StartKey) *...

Перевести с Delphi на C# маленький блок кода
Function CodingStr(Str,Key:String):String; Const Letters = ; Var i,j : Integer; Begin j:=1; For i:=1 To Length(Str)...


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

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Новые блоги и статьи
Команды "Заполнить" и "Очистить" на форме документа
Maks 26.03.2026
1. Команда формы "ЗаполнитьЗапчасти". На примере нетипового документа разработанного в конфигурации КА2. В качестве источника данных указан регистр накопления, в который записываются данные о. . .
Кому нужен AOT?
DevAlt 26.03.2026
Решил сделать простой ланчер Написал заготовку: dotnet new console --aot -o UrlHandler var items = args. Split(":"); var tag = items; var id = items; var executable = args;. . .
Отправка уведомления на почту при изменении наименования справочника
Maks 24.03.2026
Программная отправка письма электронной почты на примере изменения наименования типового справочника "Склады" в конфигурации БП3. Перед реализацией необходимо выполнить настройку системной учетной. . .
модель ЗдравоСохранения 5. Меньше увольнений- больше дохода!
anaschu 24.03.2026
Теперь система здравосохранения уменьшает количество увольнений. 9TO2GP2bpX4 a42b81fb172ffc12ca589c7898261ccb/ https:/ / rutube. ru/ video/ a42b81fb172ffc12ca589c7898261ccb/ Слева синяя линия -. . .
Midnight Chicago Blues
kumehtar 24.03.2026
Такой Midnight Chicago Blues, знаешь?. . Когда вечерние улицы становятся ночными, а ты не можешь уснуть. Ты идёшь в любимый старый бар, и бармен наливает тебе виски. Ты смотришь на пролетающие. . .
SDL3 для Desktop (MinGW): Вывод текста со шрифтом TTF с помощью библиотеки SDL3_ttf на Си и C++
8Observer8 24.03.2026
Содержание блога Финальные проекты на Си и на C++: finish-text-sdl3-c. zip finish-text-sdl3-cpp. zip
Жизнь в неопределённости
kumehtar 23.03.2026
Жизнь — это постоянное существование в неопределённости. Например, даже если у тебя есть список дел, невозможно дойти до точки, где всё окончательно завершено и больше ничего не осталось. В принципе,. . .
Модель здравоСохранения: работники работают быстрее после её введения.
anaschu 23.03.2026
geJalZw1fLo Корпорация до введения программа здравоохранения имела много невыполненных работниками заданий, после введения программы количество заданий выросло. Но на выплатах по больничным это. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru