Форум программистов, компьютерный форум, киберфорум
Delphi для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
 
Рейтинг 4.85/13: Рейтинг темы: голосов - 13, средняя оценка - 4.85
0 / 0 / 0
Регистрация: 11.10.2020
Сообщений: 46
Delphi 6-7

В документ MS Word записывать одно и то же значение в целую группу закладок

22.10.2021, 10:13. Показов 2876. Ответов 21

Студворк — интернет-сервис помощи студентам
Добрый день, форумчане. Столкнулся с необходимостью в документе MS Word записывать одно и то же значение в целую группу закладок. Т. е., например, в документе может быть несколько мест, где нужно вставить одно и то же имя и фамилию. Не могу этого сделать. Помогите, пожалуйста.

Значения закладок записываются в MS WORD на примере предоставленном, Mawrat: Как записать данные в файл MS Word

Читал и пытался использовать пример, D1973 из поста #8 взятом вот отсюда: Поиск в WORD и замена на свой текст.

Но, в примере, D1973 названия закладок имеют одинаковую длину в 2 символа (z1) и изменяется только префикс. Пример отличный и работает. Однако у меня имена закладок разной длины и я не могу понять как мне пример, D1973 переделать. Еще один нюанс данного примера в том, что он копирует последний символ имени и переводит его в число и на основе этого производит поиск и запись значения в закладку. Но если этих закладок будет больше 10, то соответственно он не будет находить нужную закладку.

Пробовал на основе функции определения позиции последнего символа, предложенного также, Mawrat вот из этого поста: поиск в строке с конца вставить в пример, предложенный, D1973, но ничего не выходит также.

Я уже отчаялся. Помогите мне кто-нибудь, пожалуйста. Архив с примером прикладываю. Изменил в нем шаблон, в котором есть несколько закладок, в которые необходимо записать одинаковые значения.
Вложения
Тип файла: rar Закладки_Одинаковые имена.rar (193.8 Кб, 12 просмотров)
0
Лучшие ответы (1)
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
22.10.2021, 10:13
Ответы с готовыми решениями:

Можно ли в две разные переменные одновременно записывать одно и тоже значение?
Привет всем. Подскажите пожалуйста, можно ли в две разные переменные одновременно записывать одно и тоже значение?

Как записывать целую часть у дробного числа
Как в мат кад записывать целое у дробного числа. Например 1 1\3? Обязательно нужно 4/3?

Как двигать целую группу слоев?
Как двигать группу слоев целиком, как на этом видео? https://www.loom.com/share/e4d1166cd82b4668a5f481dedfb75e8a Спасибо.

21
Модератор
 Аватар для D1973
9905 / 6442 / 2455
Регистрация: 21.01.2014
Сообщений: 27,346
Записей в блоге: 3
22.10.2021, 11:41
Цитата Сообщение от sshmatko Посмотреть сообщение
названия закладок имеют одинаковую длину в 2
Да ничего подобного. Имя закладки может быть какой угодно длины, 2 символа - это только префикс закладки который сделан в качестве флага, своего рода категории, чтобы определять какие конкретно данные из нескольких представленных будут в эту закладку вставлены. И если Вам мало 10 категорий - сделайте ее 3-х, 4-х, 5-значной, никто же не мешает Вам это сделать.
Цитата Сообщение от sshmatko Посмотреть сообщение
Однако у меня имена закладок разной длины
Но это же Ваш шаблон! Так кто мешает привести его в нормальный вид, с которым будет легко и удобно работать?
0
0 / 0 / 0
Регистрация: 11.10.2020
Сообщений: 46
22.10.2021, 12:17  [ТС]
Цитата Сообщение от D1973 Посмотреть сообщение
Да ничего подобного. Имя закладки может быть какой угодно длины, 2 символа - это только префикс закладки который сделан в качестве флага, своего рода категории, чтобы определять какие конкретно данные из нескольких представленных будут в эту закладку вставлены. И если Вам мало 10 категорий - сделайте ее 3-х, 4-х, 5-значной, никто же не мешает Вам это сделать.
Но все имена закладок должны иметь фиксированную длину, правильно? То есть если я Вас понял, то закладки разной длины нужно привести, например, к такому виду: N_DOKz1__1, DATA_z2__1 (то есть все имена закладок нужно подстроить под длину 7).
0
Модератор
 Аватар для D1973
9905 / 6442 / 2455
Регистрация: 21.01.2014
Сообщений: 27,346
Записей в блоге: 3
22.10.2021, 12:21
Цитата Сообщение от sshmatko Посмотреть сообщение
Но все имена закладок должны иметь фиксированную длину, правильно?
Нет. Я вообще не пойму, с чего Вы это взяли. Какой фрагмент кода навел Вас на такие мысли?
0
0 / 0 / 0
Регистрация: 11.10.2020
Сообщений: 46
22.10.2021, 12:23  [ТС]
Цитата Сообщение от D1973 Посмотреть сообщение
Нет. Я вообще не пойму, с чего Вы это взяли. Какой фрагмент кода навел Вас на такие мысли?
Вот этот:
Delphi
1
case StrToInt(Copy(WD.Bookmarks.Item(i).Name, 2, 1)) of
0
0 / 0 / 0
Регистрация: 11.10.2020
Сообщений: 46
22.10.2021, 12:39  [ТС]
D1973, вот привел шаблон в порядок, но выдает ошибку: 'I' is not a valid integer value. Можете посмотреть что я делаю не так?
Вложения
Тип файла: rar Закладки_2.rar (193.7 Кб, 6 просмотров)
0
Модератор
 Аватар для D1973
9905 / 6442 / 2455
Регистрация: 21.01.2014
Сообщений: 27,346
Записей в блоге: 3
22.10.2021, 12:46
И где там хоть что-то про длину имени закладки?
Вы, очевидно, не вникли в суть проблемы, которая поднималась в той теме, поэтому объясняю на пальцах:
В документ необходимо вставить данные нескольких разных видов. Причем вставляться они будут в различные места документа. Вставлять данные в документ я буду при помощи механизма закладок.
Конечно, можно это сделать это методом "в лоб" используя 100500 конструкций
Delphi
1
if <Имя_закладки> = 'Это_первая_закладка' then .. ;
Не находите, что это будет очень читабельно, особенно когда закладок много, а видов данных мало.
Поэтому я не пошел по индусскому пути, а просто сгруппировал все закладки; число групп закладок в документе равно числу видов добавляемых данных и определяется эта группа именно первыми двумя символами. Проще всего, конечно было бы просто пронумеровать эти группы, но имя закладки не может начинаться с цифры, отсюда необходимость буквы z как префикса.
И вот теперь я вообще не привязан к имени каждой конкретной закладки: мне не важно это имя, мне важен номер группы, который я и вычленяю этим, приведенным выше кодом. Я обхожу список закладок, для каждого элемента списка определяю принадлежность к той или иной группе и вношу те или иные данные. Вот и все. Никак не пойму, что уж Вас так смутило...

Добавлено через 1 минуту
Цитата Сообщение от sshmatko Посмотреть сообщение
Можете посмотреть что я делаю не так
Пока не могу, у меня Ворда нет...
0
0 / 0 / 0
Регистрация: 11.10.2020
Сообщений: 46
22.10.2021, 13:00  [ТС]
D1973, спасибо за пояснение. Помощь Ваша очень нужна. Все понимаю, что Вы написали. Но делаю закладку в программе с именем FIOz4, а в MS Word размещаю закладки FIOz4_1 и FIOz4_2 и выдает ошибку. И ссылается как я понял как раз на символ 'I' (не является числом).

Вот весь код:
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
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
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
unit Unit1;
 
interface
 
uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls;
 
type
  TForm1 = class(TForm)
    Button1: TButton;
    OpenDialog1: TOpenDialog;
    Label1: TLabel;
    Label2: TLabel;
    Label3: TLabel;
    Label4: TLabel;
    Edit1: TEdit;
    Edit2: TEdit;
    Edit3: TEdit;
    Edit4: TEdit;
    procedure Button1Click(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;
 
var
  Form1: TForm1;
 
implementation
 
{$R *.dfm}
 
uses
  ComObj;
 
//Функция записывает новый текст для закладки с именем aBmName.
//Функция возвращает значение True, если закладка найдена и её текст изменён
//и False - если закладка не найдена.
//Переустановка текста закладки выплоняется так:
//- Получаем ссылку на объект-диапазон, который содержит текст закладки.
//- Удаляем закладку.
//- Устанавливаем новый текст для объекта-диапазона.
//- Создаём новую закладку с диапазоном, который содержит новый текст.
function SetBmText(var aBms : Variant; const aBmName, aText : String) : Boolean;
var
  Bm, Rng : Variant;
begin
  //Проверяем - существует ли закладка с заданным именем.
  Result := aBms.Exists(aBmName);
  //Если закладка не найдена - выходим.
  if not Result then Exit;
 
  //Ссылка на закладку.
  Bm := aBms.Item(aBmName);
  //Ссылка на диапазон, связанный с закладкой.
  Rng := Bm.Range;
  //Удаление закладки.
  Bm.Delete;
  //Заменяем текст в диапазоне.
  Rng.Text := aText;
  //Добавляем новую закладку с таким же именем.
  aBms.Add(aBmName, Rng);
end;
 
 
 
procedure TForm1.Button1Click(Sender: TObject);
var
  wdApp, wdDocs, wdDoc, wdBms : Variant;
  Od : TOpenDialog;
  i : Integer;
begin
  Od := OpenDialog1;
 
  if Od.InitialDir = '' then
    Od.InitialDir := ExtractFilePath( Application.ExeName )
  ;
  Od.Title := 'Выберите шаблон, на основе которого будет создан новый документ';
  if not Od.Execute then Exit;
  if not FileExists(Od.FileName) then begin
    MessageDlg(
      'Файл с заданным именем не найден. Действие отменено.'
      ,mtWarning, [mbOK], 0
    );
    Exit;
  end;
  try
    wdApp := CreateOleObject('Word.Application');
  except
    ShowMessage('Не удалось запустить MS Word. Действие отменено.');
    Exit;
  end;
 
  //Делаем видимым окно MS Word.
  wdApp.Visible := True;
  //Ссылка на коллекцию документов.
  wdDocs := wdApp.Documents;
  //Попытка открыть выбранный файл.
  wdDoc := wdDocs.Open(FileName:=Od.FileName);
  //Подключаемся к коллекции закладок.
  wdBms := wdDoc.Bookmarks;
  //Ищем закладки с нужными именами и изменяем их текст, в соответствие
  //с данными, введёнными на форме.
  SetBmText(wdBms, 'N_DOCz1', Edit1.Text);
  //SetBmText(wdBms, 'DATA_CREATEz2', Edit2.Text);
  //SetBmText(wdBms, 'N_TABz3', Edit3.Text);
  SetBmText(wdBms, 'FIOz4', Edit4.Text);
 
 
  //Записываем информацию во все одинаковые закладки
     for i := 1 to wdDoc.Bookmarks.Count do
              case StrToInt(Copy(wdDoc.Bookmarks.Item(i).Name, 2, 1)) of
                  1: wdDoc.Bookmarks.Item(i).Range.Text := Edit1.Text;
                  4: wdDoc.Bookmarks.Item(i).Range.Text := Edit4.Text;
             end;
 
  //Сохранять документ следует под другим именем, чтобы не перезаписать шаблон.
  //wdApp.DisplayAlerts := False; //Отключаем режим показа предупреждений.
  //wdDoc.SaveAs(FileName:=...);
  //wdApp.DisplayAlerts := True; //Включаем режим показа предупреждений.
  //Закрываем документ.
  //wdDoc.Close;
  //Закрываем MS Word.
  //wdApp.Quit;
end;
 
end.
0
242 / 208 / 36
Регистрация: 19.02.2021
Сообщений: 1,431
22.10.2021, 13:20
Цитата Сообщение от sshmatko Посмотреть сообщение
Но делаю закладку в программе с именем FIOz4, а в MS Word размещаю закладки FIOz4_1 и FIOz4_2 и выдает ошибку. И ссылается как я понял как раз на символ 'I' (не является числом).
Потому что строка
Delphi
1
case StrToInt(Copy(wdDoc.Bookmarks.Item(i).Name, 2, 1)) of
пытается преобразовать второй символ строки в число.
Нужно ли такое преобразование в Вашем случае?
0
0 / 0 / 0
Регистрация: 11.10.2020
Сообщений: 46
22.10.2021, 13:28  [ТС]
Constcat, нет не нужно. Я могу сделать так:
Delphi
1
case StrToInt(Copy(wdDoc.Bookmarks.Item(i).Name, 5, 1)) of
для закладки FIOz4

Но вот другая закладка, к примеру, имеет имя DATA_CREATEz2 и как быть?
0
 Аватар для Пытливый
3763 / 2267 / 705
Регистрация: 29.05.2013
Сообщений: 9,622
22.10.2021, 13:37
Есть некоторые ограничения по именам закладок в Word.
1. Имя закладки не должно начинаться с цифры, об этом уже сказали.
2. Имя закладки должно быть уникально в рамках одного документа, а это значит, что если вам необходимо вставить "Иванов" в 5 разных мест документа, то сделать вам надо 5 разных закладок, а не одну. Отсюда возникает простое решение объединить такие закладки в группы типа (Фамилия1,Фамилия2,Фамилия3,Фамилия4,Фам илия5)
0
242 / 208 / 36
Регистрация: 19.02.2021
Сообщений: 1,431
22.10.2021, 13:41
Цитата Сообщение от sshmatko Посмотреть сообщение
Но вот другая закладка, к примеру, имеет имя DATA_CREATEz2 и как быть?
В этом случае нужно организовать имя закладки таким образом, чтобы число было в фиксированном месте.
Либо выделять его каким-то маркером, типа "_число_", чтобы можно было определить местоположение этого числа.
Как вариант - можно ориентироваться на последние символы имени, которые должны быть числовыми.
Если предполагается одна цифра, то задача сводится к получению номера последнего символа (вместо 5)
0
0 / 0 / 0
Регистрация: 11.10.2020
Сообщений: 46
22.10.2021, 13:41  [ТС]
Пытливый, а как же тогда добавить Фамилию6 по необходимости в документ? В коде дописывать закладку с именем Фамилия6. Гораздо удобнее определить один раз закладку с именем Фамилия, а в MS Word присваивать им уникальные имена Фамилия1,Фамилия2,Фамилия3,Фамилия4,Фами лия5. Но вот как это сделать не знаю.
0
 Аватар для Пытливый
3763 / 2267 / 705
Регистрация: 29.05.2013
Сообщений: 9,622
22.10.2021, 13:55
Цитата Сообщение от sshmatko Посмотреть сообщение
Пытливый, а как же тогда добавить Фамилию6 по необходимости в документ? В коде дописывать закладку с именем Фамилия6. Гораздо удобнее определить один раз закладку с именем Фамилия, а в MS Word присваивать им уникальные имена Фамилия1,Фамилия2,Фамилия3,Фамилия4,Фами лия5. Но вот как это сделать не знаю.
Вы говорите в общем-то о том-же, только другими словами. Обработать все закладки, заранее не зная их количество, довольно просто. Надо получить доступ к коллекции закладок. Пробежаться по каждой из них, проверив, совпадает ли начало ее имени с шаблоном и при совпадении вставить текст. Вот и все.
0
0 / 0 / 0
Регистрация: 11.10.2020
Сообщений: 46
22.10.2021, 14:09  [ТС]
Пытливый, попытался сейчас сделать это и учел еще замечания Constcat, но не получилось. Делал так:
Delphi
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
//Делаем видимым окно MS Word.
  wdApp.Visible := True;
  //Ссылка на коллекцию документов.
  wdDocs := wdApp.Documents;
  //Попытка открыть выбранный файл.
  wdDoc := wdDocs.Open(FileName:=Od.FileName);
  //Подключаемся к коллекции закладок.
  wdBms := wdDoc.Bookmarks;
  //Ищем закладки с нужными именами и изменяем их текст, в соответствие
  //с данными, введёнными на форме.
  SetBmText(wdBms, 'z1_N_DOC', Edit1.Text);
  SetBmText(wdBms, 'z4_FIO', Edit4.Text);
 
  //Записываем информацию во все одинаковые закладки
     for i := 1 to wdDoc.Bookmarks.Count do
              case StrToInt(Copy(wdDoc.Bookmarks.Item(i).Name, 2, 1)) of
                  1: wdDoc.Bookmarks.Item(i).Range.Text := Edit1.Text;
                  4: wdDoc.Bookmarks.Item(i).Range.Text := Edit4.Text;
             end;
В MS Word записываю закладки: <z1_N_DOC_1>, <z1_N_DOC_2> и <z4_FIO_1>, <z4_FIO_2>. Обрабатывает, но только две закладки z1_N_DOC_1 и z4_FIO_1, а дальше выскакивает ошибка "Запрашиваемого семейства не существует".
0
 Аватар для Пытливый
3763 / 2267 / 705
Регистрация: 29.05.2013
Сообщений: 9,622
22.10.2021, 14:52
В общем какой-то баг при обходе коллекции закладок имеет место. Попробую покопать в инете на эту тему, может найду решение.
0
0 / 0 / 0
Регистрация: 11.10.2020
Сообщений: 46
22.10.2021, 15:04  [ТС]
Пытливый, спасибо за помощь. Пробовал разные варианты и только сейчас получилось при соблюдении одного условия. До этого я выделял в документе MS Word названия закладки, например, <z1_N_DOC_1> (для визуального восприятия где находится закладка в документе) и добавлял в закладки название, но как оказалось надо не выделять текст, а просто поставить курсор на место в документе, где должна быть закладка и при помощи ВСТАВКА-ЗАКЛАДКА присвоить ей имя. Подозреваю это происходит из-за перезаписи имен закладок в MS WORD:

Delphi
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
function SetBmText(var aBms : Variant; const aBmName, aText : String) : Boolean;
var
  Bm, Rng : Variant;
begin
  //Проверяем - существует ли закладка с заданным именем.
  Result := aBms.Exists(aBmName);
  //Если закладка не найдена - выходим.
  if not Result then Exit;
 
  //Ссылка на закладку.
  Bm := aBms.Item(aBmName);
  //Ссылка на диапазон, связанный с закладкой.
  Rng := Bm.Range;
  //Удаление закладки.
  Bm.Delete;
  //Заменяем текст в диапазоне.
  Rng.Text := aText;
  //Добавляем новую закладку с таким же именем.
  aBms.Add(aBmName, Rng);
end;
Но теперь остался вопрос о том как сделать закладки при нумерации их больше 10. Например, z10_FIO.
0
242 / 208 / 36
Регистрация: 19.02.2021
Сообщений: 1,431
22.10.2021, 15:29
Цитата Сообщение от sshmatko Посмотреть сообщение
Но теперь остался вопрос о том как сделать закладки при нумерации их больше 10. Например, z10_FIO.
Нумеровать их от "01" до "99". Или от "001" до "999". И извлекать из строки не 1 символ, а 2 (3/4...)
0
0 / 0 / 0
Регистрация: 11.10.2020
Сообщений: 46
22.10.2021, 16:04  [ТС]
Constcat, а подскажите как это сделать в этой конструкции:

Delphi
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
//Ищем закладки с нужными именами и изменяем их текст, в соответствие
  //с данными, введёнными на форме.
  SetBmText(wdBms, 'z11_N_DOC', Edit1.Text);
  SetBmText(wdBms, 'z12_DATA_CREATE', Edit2.Text);
  SetBmText(wdBms, 'z13_N_TAB', Edit3.Text);
  SetBmText(wdBms, 'z14_FIO', Edit4.Text);
 
  //Записываем информацию во все одинаковые закладки
     for i := 1 to wdDoc.Bookmarks.Count do
              case StrToInt(Copy(wdDoc.Bookmarks.Item(i).Name, 3, 2)) of
                  11: wdDoc.Bookmarks.Item(i).Range.Text := Edit1.Text;
                  12: wdDoc.Bookmarks.Item(i).Range.Text := Edit2.Text;
                  13: wdDoc.Bookmarks.Item(i).Range.Text := Edit3.Text;
                  14: wdDoc.Bookmarks.Item(i).Range.Text := Edit4.Text;
             end;
Вот при такой записи выдает ошибку: '1_' is not a valid integer value.
0
242 / 208 / 36
Регистрация: 19.02.2021
Сообщений: 1,431
22.10.2021, 16:15
Цитата Сообщение от sshmatko Посмотреть сообщение
Вот при такой записи выдает ошибку: '1_' is not a valid integer value.
Delphi
1
case StrToInt(Copy(wdDoc.Bookmarks.Item(i).Name, 3, 2)) of
В строке 'z11_N_DOC' берется 2 символа с 3 позиции. 3 позиция - это вторая 1. Два символа от этой позиции '1_'
В Вашем случае нужно брать 2 символа со 2 позиции.
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
22.10.2021, 16:15
Помогаю со студенческими работами здесь

Форматирование закладок в Word
Здравствуйте! Подскажите, как реализовать такую задачу. Есть документ, в нем есть много повторяющихся элементов. Реализовал ввод в...

Чтение закладок из Word
Как при помощи OLE сервера прочитать закладку и вообще ли это возможно. PatientOne - обьект класа Patient void FillPatient(String...

OpenXML и замена закладок в Word
Добрый день, требуется заменять закладки в файле docx, использовать interop не хочется, так как очень уж медленная эта штука. Смотрю в...

Записывать историю калькулятора в текстовый документ
Что нужно прописать, чтобы записывалась история калькулятора в текстовый файл. И чтобы можно было просмотреть историю операций.

Автоматическое заполенение TextBox из закладок MS Word
Помогите написать строчку кода. Суть в том что при вызове формы (Надстройки) в ней должны заполнятся поля из закладок. То есть в TextBox в...


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

Или воспользуйтесь поиском по форуму:
20
Ответ Создать тему
Новые блоги и статьи
PhpStorm 2025.3: WSL Terminal всегда стартует в ~
and_y87 14.12.2025
PhpStorm 2025. 3: WSL Terminal всегда стартует в ~ (home), игнорируя директорию проекта Симптом: После обновления до PhpStorm 2025. 3 встроенный терминал WSL открывается в домашней директории. . .
Access
VikBal 11.12.2025
Помогите пожалуйста !! Как объединить 2 одинаковые БД Access с разными данными.
Новый ноутбук
volvo 07.12.2025
Всем привет. По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне: Ryzen 5 7533HS 64 Gb DDR5 1Tb NVMe 16" Full HD Display Win11 Pro
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
Поиск "дружественных имён" СОМ портов
Argus19 22.11.2025
Поиск "дружественных имён" СОМ портов На странице: https:/ / norseev. ru/ 2018/ 01/ 04/ comportlist_windows/ нашёл схожую тему. Там приведён код на С++, который показывает только имена СОМ портов, типа,. . .
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Programma_Boinc 20.11.2025
Сколько Государство потратило денег на меня, обеспечивая инсулином. Вот решила сделать интересный приблизительный подсчет, сколько государство потратило на меня денег на покупку инсулинов. . . .
Ломающие изменения в C#.NStar Alpha
Etyuhibosecyu 20.11.2025
Уже можно не только тестировать, но и пользоваться C#. NStar - писать оконные приложения, содержащие надписи, кнопки, текстовые поля и даже изображения, например, моя игра "Три в ряд" написана на этом. . .
Мысли в слух
kumehtar 18.11.2025
Кстати, совсем недавно имел разговор на тему медитаций с людьми. И обнаружил, что они вообще не понимают что такое медитация и зачем она нужна. Самые базовые вещи. Для них это - когда просто люди. . .
Создание Single Page Application на фреймах
krapotkin 16.11.2025
Статья исключительно для начинающих. Подходы оригинальностью не блещут. В век Веб все очень привыкли к дизайну Single-Page-Application . Быстренько разберем подход "на фреймах". Мы делаем одну. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru