Пишем программу для создания книг FB2 - [9]
begin
Form2.ListBox1.Items.Assign(ListBox3.Items);
Form2.Button1Click(nil);
Form2.ShowModal;
if Form2.ModalResult = mrOK then
begin
ListBox3.Items.Assign(Form2.ListBox1.Items);
end;
end;
procedure TForm1.Button7Click(Sender: TObject);
begin
Form2.ListBox1.Items.Assign(ListBox2.Items);
Form2.Button1Click(nil);
Form2.ShowModal;
if Form2.ModalResult = mrOK then
begin
ListBox2.Items.Assign(Form2.ListBox1.Items);
end;
end;
procedure TForm1.FormCreate(Sender: TObject);
var
i: integer;
begin
Path:= ExtractFileDir(ParamStr(0)) + '\';
OpenDialog1.InitialDir:= Path;
for i:= 0 to maxL do
SLang.Items.Add(Lg[i][2]);
SLang.ItemIndex:= 0;
end;
procedure TForm1.Button3Click(Sender: TObject);
begin
if FileExists(Path + 'EndNotes.txt')
then EndNotesList.Items.LoadFromFile(Path + 'EndNotes.txt');
end;
procedure TForm1.Button9Click(Sender: TObject);
begin
if FileExists(Path + 'Annotation.txt') then
Annotation.Lines.LoadFromFile(Path + 'Annotation.txt');
end;
function ScanUpStyle(n: integer):TmyStyle;
var
i: integer;
LStyle: TmyStyle;
begin
with Form1.ListBox1 do
for i:= n downto 0 do
begin
GetStyle(Items[i], LStyle);
if LStyle in [H1..H5] then
begin
result:= LStyle;
exit;
end;
end;
result:= H1;
end;
procedure ShowHeadStyle(n: integer);
var
LStyle: TmyStyle;
begin
LStyle:= ScanUpStyle(n);
Form1.Button2.Caption:= SetStyle(LStyle);
Form1.Button2.Tag:= integer(LStyle);
end;
procedure TForm1.ListBox1DblClick(Sender: TObject);
var
S: string;
CurStyle: TmyStyle;
i, st: integer;
begin
st:= ListBox1.itemIndex;
S:= GetStyle(ListBox1.Items[st], CurStyle);
with EditSt do
begin
Memo1.WordWrap:= true;
Memo1.Clear;
Memo1.Lines.Add(S);
ShowModal;
if ModalResult = mrOK then
begin
ListBox1.Items.Delete(st);
Memo1.WordWrap:= false;
for i:= Memo1.Lines.Count - 1 downto 0 do
ListBox1.Items.Insert(st, SetStyle1(CurStyle)+Memo1.Lines[i]);
end;
end;
end;
procedure TForm1.ListBox1Click(Sender: TObject);
begin
ShowHeadStyle(ListBox1.itemIndex);
end;
procedure TForm1.Button2Click(Sender: TObject);
begin
ChangeStyle(TmyStyle(Button2.Tag));
end;
procedure TForm1.Button5Click(Sender: TObject);
var
LStyle: TmyStyle;
begin
LStyle:= TmyStyle(Button2.Tag);
if LStyle < H5 then ChangeStyle(Succ(LStyle));
end;
procedure TForm1.Button1Click(Sender: TObject);
var
LStyle: TmyStyle;
begin
LStyle:= TmyStyle(Button2.Tag);
if LStyle > H1 then ChangeStyle(Pred(LStyle));
end;
end.
// конец кода
genres.dfm
// начало кода
object Form3: TForm3
Left = 214
Top = 121
BorderIcons = [biSystemMenu, biMinimize]
BorderStyle = bsSingle
Caption = 'Genre'
ClientHeight = 294
ClientWidth = 603
Color = clBtnFace
Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText
Font.Height = -11
Font.Name = 'MS Sans Serif'
Font.Style = []
OldCreateOrder = False
OnCreate = FormCreate
PixelsPerInch = 96
TextHeight = 13
object ListBox1: TListBox
Left = 8
Top = 8
Width = 241
Height = 209
ItemHeight = 13
TabOrder = 0
end
object Button1: TButton
Left = 272
Top = 32
Width = 75
Height = 25
Caption = 'Add'
TabOrder = 1
OnClick = Button1Click
end
object Button2: TButton
Left = 272
Top = 64
Width = 75
Height = 25
Caption = 'Delete'
TabOrder = 2
OnClick = Button2Click
end
object BitBtn1: TBitBtn
Left = 80
Top = 248
Width = 75
Height = 25
TabOrder = 3
Kind = bkOK
end
object BitBtn2: TBitBtn
Left = 448
Top = 240
Width = 75
Height = 25
TabOrder = 4
Kind = bkCancel
end
object Button3: TButton
Left = 272
Top = 112
Width = 75
Height = 25
Caption = 'Up'
TabOrder = 5
OnClick = Button3Click
end
object Button4: TButton
Left = 272
Top = 152
Width = 75
Height = 25
Caption = 'Down'
TabOrder = 6
OnClick = Button4Click
end
object ListBox2: TListBox
Left = 368
Top = 32
Width = 225
Height = 185
ItemHeight = 13
TabOrder = 7
OnDblClick = ListBox2DblClick
end
object ComboBox1: TComboBox
Left = 368
Top = 8
Width = 225
Height = 21
ItemHeight = 13
ItemIndex = 0
TabOrder = 8
Text = #1044#1077#1083#1086#1074#1072#1103' '#1083#1080#1090#1077#1088#1072#1090#1091#1088#1072
OnChange = ComboBox1Change
Items.Strings = (
#1044#1077#1083#1086#1074#1072#1103' '#1083#1080#1090#1077#1088#1072#1090#1091#1088#1072
#1044#1077#1090#1077#1082#1090#1080#1074#1099' '#1080' '#1058#1088#1080#1083#1083#1077#1088#1099
#1044#1077#1090#1089#1082#1086#1077
#1044#1086#1082#1091#1084#1077#1085#1090#1072#1083#1100#1085#1072#1103' '#1083#1080#1090#1077#1088#1072#1090#1091#1088#1072
#1044#1086#1084#1086#1074#1086#1076#1089#1090#1074#1086
#1050#1086#1084#1087#1100#1102#1090#1077#1088#1099' '#1080' '#1048#1085#1090#1077#1088#1085#1077#1090
#1051#1102#1073#1086#1074#1085#1099#1077' '#1088#1086#1084#1072#1085#1099
#1053#1072#1091#1082#1072', '#1054#1073#1088#1072#1079#1086#1074#1072#1085#1080#1077
#1055#1077#1088#1080#1086#1076#1080#1082#1072
#1055#1086#1101#1079#1080#1103', '#1044#1088#1072#1084#1072#1090#1091#1088#1075#1080#1103
#1055#1088#1080#1082#1083#1102#1095#1077#1085#1080#1103
#1055#1088#1086#1079#1072
#1055#1088#1086#1095#1077#1077
#1056#1077#1083#1080#1075#1080#1103' '#1080' '#1076#1091#1093#1086#1074#1085#1086#1089#1090#1100
#1057#1087#1088#1072#1074#1086#1095#1085#1072#1103' '#1083#1080#1090#1077#1088#1072#1090#1091#1088#1072
#1057#1090#1072#1088#1080#1085#1085#1086#1077
#1058#1077#1093#1085#1080#1082#1072
#1060#1072#1085#1090#1072#1089#1090#1080#1082#1072
#1070#1084#1086#1088)
Книга предназначена студенту, писавшему программы только в качестве курсовых, "сдавшему" Delphi и несмотря на это, желающему стать программистом. Это, не сборник готовых рецептов, автор хочет поставить читателя в условия максимально приближенные к рабочим. Мы вместе напишем программу, пройдя через ошибки, и сомнения к окончательной победе...
Книга предназначена студенту, писавшему программы только в качестве курсовых, "сдавшему" Delphi и несмотря на это, желающему стать программистом. Это, не сборник готовых рецептов, автор хочет поставить читателя в условия максимально приближенные к рабочим. Мы вместе напишем программу, пройдя через ошибки, и сомнения к окончательной победе...
В книге рассказывается история главного героя, который сталкивается с различными проблемами и препятствиями на протяжении всего своего путешествия. По пути он встречает множество второстепенных персонажей, которые играют важные роли в истории. Благодаря опыту главного героя книга исследует такие темы, как любовь, потеря, надежда и стойкость. По мере того, как главный герой преодолевает свои трудности, он усваивает ценные уроки жизни и растет как личность.
Разработчику часто требуется много сторонних инструментов, чтобы создавать и поддерживать проект. Система Git — один из таких инструментов и используется для контроля промежуточных версий вашего приложения, позволяя вам исправлять ошибки, откатывать к старой версии, разрабатывать проект в команде и сливать его потом. В книге вы узнаете об основах работы с Git: установка, ключевые команды, gitHub и многое другое.В книге рассматриваются следующие темы:основы Git;ветвление в Git;Git на сервере;распределённый Git;GitHub;инструменты Git;настройка Git;Git и другие системы контроля версий.
В наши дни компьютеры с несколькими многоядерными процессорами стали нормой. Стандарт С++11 языка С++ предоставляет развитую поддержку многопоточности в приложениях. Поэтому, чтобы сохранять конкурентоспособность, вы должны овладеть принципами и приемами их разработки, а также новыми средствами языка, относящимися к параллелизму.Книга «Параллельное программирование на С++ в действии» не предполагает предварительных знаний в этой области. Вдумчиво читая ее, вы научитесь писать надежные и элегантные многопоточные программы на С++11.
Эта книга для тех, кто давно связан с разработкой программного обеспечения. Или для тех, кто еще думает выбрать программирование своей профессией. Или для тех, кто просто привык думать и размышлять о происходящем в мире информационных технологий.Не секрет, что основная масса софтостроения сосредоточена в секторе так называемой корпоративной разработки: от комплексных информационных систем предприятия до отдельных приложений. Поэтому немалая часть сюжетов касается именно Enterprise Programming.Из текста вы вряд ли узнаете, как правильно склеивать многоэтажные постройки из готовых компонентов в гетерогенной среде, проектировать интерфейсы, синхронизировать процессы или писать эффективные запросы к базам данных.
Вниманию читателей предлагается справочник по JavaScript.Справочник предназначается для людей, уже освоивших азы программирования в JavaScript.Справочник создан на основе информации, предоставленной на сайте «Справочник Web-языков» www.spravkaweb.ru.Дата выхода данной версии справочника: 12:33, 21 марта 2007.
Вниманию читателей предлагается справочник по PHP.Справочник предназначается для людей, уже освоивших азы программирования на языке PHP.Справочник создан на основе информации, предоставленной на сайте «Справочник Web-языков» www.spravkaweb.ru.
РАССЫЛКА ЯВЛЯЕТСЯ ЧАСТЬЮ ПРОЕКТА RSDN, НА САЙТЕ КОТОРОГО ВСЕГДА МОЖНО НАЙТИ ВСЮ НЕОБХОДИМУЮ РАЗРАБОТЧИКУ ИНФОРМАЦИЮ, СТАТЬИ, ФОРУМЫ, РЕСУРСЫ, ПОЛНЫЙ АРХИВ ПРЕДЫДУЩИХ ВЫПУСКОВ РАССЫЛКИ И МНОГОЕ ДРУГОЕ.