DRAKON.SU

Текущее время: Пятница, 29 Март, 2024 11:34

Часовой пояс: UTC + 3 часа




Начать новую тему Ответить на тему  [ Сообщений: 46 ]  На страницу 1, 2, 3  След.
Автор Сообщение
СообщениеДобавлено: Среда, 10 Сентябрь, 2008 21:38 

Зарегистрирован: Воскресенье, 06 Апрель, 2008 14:43
Сообщения: 1657
Взамен DRT от 27.07.2008
предлагаю Вашему вниманию полнофункциональный Дракон-Редактор, Транслятор:
DRT4.rar

Отличие от DRT от 27.07.2008:
1. отказался от схемы "Заголовок";
2. изменен формат файла ...drt . Обеспечено чтение старого формата и сохранение в новом;
3. изменена схема "Запоминатель". Может содержать несколько пунктов, отображаться в рамке;
4. улучшено выполнение команд "Обновить схему", "Обновить лист". Приняты меры к уменьшению вероятности зацикливания программы. Устраняются некоторые изломы линий;
5. введено рисование (без пересечений) ломаной линией лианы в командах "Пересадить лиану", "Заземлить лиану";
6. введен поиск в тексте икон и примечаний;
7. формируется программный код на языках 1С, Делфи, КП. Маршрутная часть формируется из графики, декларативная и командная включается из программных примечаний;
8. можно сформировать цикл пересадкой лианы из развилки или переключателя, т.е. вверх;
9. переработано редактирование в части удаления икон;
10. введены средства перемещения поля графики в окне без использования колеса мыши.

По поводу:
1. перехода на использование шрифта Unicoda. Как это сделать в Делфи7 ?;
2. вывод графики в формате метафайла. Опыта нет, нужны примеры. Как обеспечить соответствие с изображением на экране?
3. формирование файла XML. Опыта нет, нужны примеры. Какими средствами формировать, по какой структуре?


Последний раз редактировалось ==== Среда, 10 Сентябрь, 2008 22:40, всего редактировалось 1 раз.

Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Среда, 10 Сентябрь, 2008 22:36 

Зарегистрирован: Суббота, 26 Ноябрь, 2005 18:38
Сообщения: 24
Геннадий Тышов писал(а):
Взамен DRT от 27.07.2008
предлагаю Вашему вниманию полнофункциональный Дракон-Редактор, Транслятор:
DRT4.rar


Текст по-прежнему не показывает - сплошные '?'...


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Среда, 10 Сентябрь, 2008 22:41 
Администратор

Зарегистрирован: Вторник, 15 Ноябрь, 2005 01:14
Сообщения: 71
Откуда: Россия, Орёл
Если не возражаете, положу файл и тут. Уж очень в Яндексе система глупая.


Последний раз редактировалось Борис Рюмшин Среда, 30 Январь, 2013 07:25, всего редактировалось 1 раз.
Вложенный файл удалён в связи с потерей актуальности по просьбе автора.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Среда, 10 Сентябрь, 2008 23:07 

Зарегистрирован: Воскресенье, 06 Апрель, 2008 14:43
Сообщения: 1657
Vlad писал(а):
Текст по-прежнему не показывает - сплошные '?'...

Я не знаю, что сделать?
Установлено в окне текстов: RUSSIAN CHARSET, шрифт "O" Ariel Cyrillic.
Как у других отображается текст?


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Среда, 10 Сентябрь, 2008 23:24 

Зарегистрирован: Суббота, 26 Ноябрь, 2005 18:38
Сообщения: 24
Геннадий Тышов писал(а):
Я не знаю, что сделать?


Я с дельфи плотно не работал, не знаю. Ни с какими другими русскими программами проблем нет.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Среда, 10 Сентябрь, 2008 23:31 

Зарегистрирован: Суббота, 26 Ноябрь, 2005 18:38
Сообщения: 24
Геннадий Тышов писал(а):
Я не знаю, что сделать?


Системная локаль - русская, т.е. даже не-юникодные русские проги нормально работают.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Четверг, 11 Сентябрь, 2008 07:01 
Аватара пользователя

Зарегистрирован: Пятница, 11 Май, 2007 21:57
Сообщения: 234
Откуда: Украина, Киев
Геннадий Тышов писал(а):
Vlad писал(а):
Текст по-прежнему не показывает - сплошные '?'...
Я не знаю, что сделать?
1. Нужно использовать Unicode контролы. Есть, например, Tnt Controls. Но они с некоторых пор стали платными :?
2. Повсюду использовать тип WideString и соответствующие варианты строковых процедур для работы с ним.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Четверг, 11 Сентябрь, 2008 07:11 
Аватара пользователя

Зарегистрирован: Пятница, 11 Май, 2007 21:57
Сообщения: 234
Откуда: Украина, Киев
Геннадий Тышов писал(а):
3. формирование файла XML. Опыта нет, нужны примеры. Какими средствами формировать, по какой структуре?
Чем плох этот вариант viewtopic.php?p=18051#p18051 ?


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Четверг, 11 Сентябрь, 2008 07:13 
Аватара пользователя

Зарегистрирован: Пятница, 11 Май, 2007 21:57
Сообщения: 234
Откуда: Украина, Киев
Геннадий Тышов писал(а):
2. изменен формат файла ...drt . Обеспечено чтение старого формата и сохранение в новом;
Самый старый не читается.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Четверг, 11 Сентябрь, 2008 07:48 

Зарегистрирован: Суббота, 26 Ноябрь, 2005 18:38
Сообщения: 24
Ярослав Романченко писал(а):
1. Нужно использовать Unicode контролы.


Там даже менюшка не показывается. Так что дело не в контролах...


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Четверг, 11 Сентябрь, 2008 07:56 
Аватара пользователя

Зарегистрирован: Пятница, 11 Май, 2007 21:57
Сообщения: 234
Откуда: Украина, Киев
Vlad писал(а):
Там даже менюшка не показывается. Так что дело не в контролах...
В Delphi всё -- контролы :)
Есть, в том числе, и юникодовый вариант менюшки -- TTntMainMenu :)


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Четверг, 11 Сентябрь, 2008 08:25 
Аватара пользователя

Зарегистрирован: Суббота, 29 Март, 2008 19:27
Сообщения: 1098
Откуда: Россия, Чебоксары
Геннадий Тышов писал(а):
2. вывод графики в формате метафайла. Опыта нет, нужны примеры. Как обеспечить соответствие с изображением на экране?
- рисовать всё отдельной процедурой (например, procedure MyDraw(aCanvas:TCanvas)), передавая ей в качестве параметра произвольный Canvas и обеспечивая нужное масштабирование;
- при рисовании на экране или в каком-нибудь print preview - MyDraw(Form1.Image1.Picture.Bitmap.Canvas) - можно и по-другому, как удобнее в конкретном случае. При этом в процедуре следует предусмотреть различные алгоритмы рисования в зависимости от назначения (например, чёрно-белые цвета при рисовании для принтера);
- для сохранения метафайла предпринять следующие шаги:
Код:
var mc:TMetafileCanvas; m:TMetafile;
...
m:=TMetafile.Create; m.Enhanced:=true; m.Width:=...; m.Height:=...;
mc:=TMetaFileCanvas.Create(m,0);
mc.Lock; mc.FillRect(Rect(0,0,m.Width,m.Height));
MyDraw(mc);
mc.UnLock;
mc.Free;
//дальше делаем, что хотим, например:
PrintImage.Picture.Metafile.Assign(m); //рисование там, где надо - форма, превью, мап и т.п.
m.SaveToFile(SaveDialog1.FileName); //сохранение в файл .EMF
m.Free;


Геннадий Тышов писал(а):
3. формирование файла XML. Опыта нет, нужны примеры. Какими средствами формировать, по какой структуре?
Многие сразу всю структуру делают в XML, и работают с ней тут же...
Плюсы - гибкость, переносимость, не нужна сложная программная перекодировка при экспорте/импорте и т.п.
Минусы - затратно и медленно (в Дельфи вся структура XML фактически хранится в иерерхической структуре из TStringList).
Но, если у Вас собственные бинарные структуры для представления Дракон-схемы, то замучаетесь потом сопровождать-изменять. Проходили уже это ;)


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Четверг, 11 Сентябрь, 2008 10:38 

Зарегистрирован: Понедельник, 30 Июль, 2007 10:53
Сообщения: 112
Откуда: Беларусь, Минск
Vlad писал(а):
Текст по-прежнему не показывает - сплошные '?'...
А умолчальный шрифт в системе имеет нужную локаль? И установлена ли она?


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Четверг, 11 Сентябрь, 2008 11:17 

Зарегистрирован: Четверг, 12 Июль, 2007 23:18
Сообщения: 56
Откуда: Узбекистан, Чирчик
А в этом редакторе когда-нибудь хоть какой-то тулбарчик появится?
И, кстати, зачем нужно переименовывать экзешник?


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Четверг, 11 Сентябрь, 2008 11:51 
Модератор
Аватара пользователя

Зарегистрирован: Понедельник, 14 Ноябрь, 2005 18:39
Сообщения: 631
Откуда: Россия, Орёл
Да, в данном случае панель фигур неплоха была бы... Крупными кнопками сбоку.
С обязательным дублированием горячими сочетаниями.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Четверг, 11 Сентябрь, 2008 11:57 

Зарегистрирован: Среда, 31 Октябрь, 2007 18:58
Сообщения: 29
Откуда: Austria, Bruck
Геннадий! Откройте, пожалуйста, исходники :) Без права использовать код в других проектах и т.д. Так работа пойдет быстрее. А то чтобы исправить проблему с шрифтами пришлось взятсься за IDA Pro... ;)


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Четверг, 11 Сентябрь, 2008 15:42 

Зарегистрирован: Суббота, 26 Ноябрь, 2005 18:38
Сообщения: 24
Valery Solovey писал(а):
А умолчальный шрифт в системе имеет нужную локаль?


Что такое "умолчальный шрифт в системе"?

Valery Solovey писал(а):
И установлена ли она?


Да установлена. И выставлена как умолчальная.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Четверг, 11 Сентябрь, 2008 16:27 

Зарегистрирован: Понедельник, 30 Июль, 2007 10:53
Сообщения: 112
Откуда: Беларусь, Минск
Шрифт по-умолчанию помимо всего прочего используется тогда, когда в Вашей системе нет ожидаемого программой шрифта. А шрифта Ariel у Вас может и не быть.

Я уже не помню, где в дебрях графического интерфейса можно выбирать своё значение этого шрифта, потому что последний раз это делал ещё на 98-й.

P.S. А у меня с кодировкой в этой программе всё в порядке. Несмотря даже на то, что указанного шрифта у меня нет.
Standards and formats: Russian
Location: Russia
Language used in menus and dialogs: English
Language for non-Unicode programs: Russian


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Четверг, 11 Сентябрь, 2008 16:37 

Зарегистрирован: Пятница, 25 Ноябрь, 2005 20:31
Сообщения: 1
Откуда: Ульяновск
Попробуте написать SetThreadLocale(1049) в файле проекта:

Код:
program Project1;
uses
  Forms, Windows,
  Unit1 in 'Unit1.pas' {Form1};
{$R *.res}
begin
  SetThreadLocale(1049);
  Application.Initialize;
  Application.CreateForm(TForm1, Form1);
  Application.Run;
end.


У каждой формы нужно сменить Font. MS Sans Serif, поставленный там по умолчанию, не является юникодным шрифтом. Например на Tahoma.
При смене шрифта не забудьте установить Charset в RUSSIAN_CHARSET.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Четверг, 11 Сентябрь, 2008 19:33 

Зарегистрирован: Среда, 31 Октябрь, 2007 18:58
Сообщения: 29
Откуда: Austria, Bruck
Коллеги, это все хорошо. Но, мне, например, менять локаль ну никак нельзя. Так где же выход (за исключением патча)???


Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 46 ]  На страницу 1, 2, 3  След.

Часовой пояс: UTC + 3 часа


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 14


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
cron
Вся информация, размещаемая участниками на конференции (тексты сообщений, вложения и пр.) © 2008-2024, участники конференции «DRAKON.SU», если специально не оговорено иное.
Администрация не несет ответственности за мнения, стиль и достоверность высказываний участников, равно как и за безопасность материалов, предоставляемых участниками во вложениях.
Powered by phpBB® Forum Software © phpBB Group
Русская поддержка phpBB