Другие языки программирования и технологии

Как написать на PascalABC.NET блокнот?

Если блокнот как в "винде" notepad - там почти нечего писать. Создать проект с формой, добавить меню, положить TextBox, включить у него Mutliline и Dock к окну. меню связать с сохранением TextBox в файл и чтением.
Чтение и запись в файл делается одной строчкой кода, вызов стандартного диалога "открытия" и "сохранения" - одной, проверки + реакция на исключение - ну ещё строчек 5.
+ повесить проверку на событие FormClosing, чтобы спрашивать сохранять ли изменения и при согласии - сохранять.
И уже бОльшая часть функционала есть. В .NET встроены способы перекодировки текста соотв. тоже без особых проблем, если захочется расширить функционал.

Попробуйте - не будет что получаться - пишите. За Вас целиком писать такое смысла не вижу.

Или можно взять пример на C# и адаптировать под Pascal ABC.NET - там ничего сложного в адаптации не будет и должно быть очевидно. Те-же классы, и методы - просто синтаксически чуть иначе. Даже не особо зная C# как мне кажется можно сделать.
НК
Николай Ковтун
84 764
Лучший ответ
implementation
var s:string;
F_N:string;
procedure Form1.toolStripMenuItem4_Click(sender: Object; e: EventArgs);
begin
//файл - Новый
TextBox1.Clear;
end;

procedure Form1.toolStripMenuItem5_Click(sender: Object; e: EventArgs);
begin
//файл-Открыть
openFileDialog1.ShowDialog();
s:=openFileDialog1.FileName;
Text:='Блокнот' + s;
TextBox1.Lines:=ReadAllLines(s);
end;

procedure Form1.toolStripMenuItem6_Click(sender: Object; e: EventArgs);
begin
//файл-Сохранить
saveFileDialog1.ShowDialog();
F_N:saveFileDialog1.FileName;
WriteAllLines(F_N,TextBox1.Lines);
Text:='Блокнот' + F_N;
end;

procedure Form1.toolStripMenuItem7_Click(sender: Object; e: EventArgs);
begin
//файл-Выход
close;
end;

procedure Form1.toolStripMenuItem8_Click(sender: Object; e: EventArgs);
begin
//формат- Шрифт
fontDialog1.ShowDialog();
TextBox1.Font:=fontDialog1.Font;
end;

procedure Form1.toolStripMenuItem9_Click(sender: Object; e: EventArgs);
begin
//формат- Цвет шрифта
colorDialog1.ShowDialog();
TextBox1.ForeColor:=colorDialog1.Color;
end;

procedure Form1.toolStripMenuItem10_Click(sender: Object; e: EventArgs);
begin
//формат- Цвет фона
colorDialog1.ShowDialog();
TextBox1.BackColor:=colorDialog1.Color;
end;

end.