![>](style_images/1/nav_m.gif)
![]() |
Наши проекты:
Журнал · Discuz!ML · Wiki · DRKB · Помощь проекту |
|
ПРАВИЛА | FAQ | Помощь | Поиск | Участники | Календарь | Избранное | RSS |
[3.15.156.140] |
![]() |
|
Страницы: (3) 1 [2] 3 все ( Перейти к последнему сообщению ) |
![]() |
Прикр. сообщ.
#1
,
|
|
Переносим код из Турбо Паскаля Давайте здесь будем помогать людям переносить свои программы из Турбо Паскаля (графику, Turbo Vision). Если у кого есть проблемы с портированием, опишите подробно проблему. Важно: не забудьте также указать тип компилятора и его версию. Большие куски текста не вставлять! Можно показать лишь часть кода. А если этого недостаточно, то присоедините архив к сообщению. Добавлено Советы: Чтобы программы переносились легко, надо |
Сообщ.
#16
,
|
|
|
Цитата Чтобы миновать консольное окно, нужно указать вначале программы (перед Uses) я делаю так : ![]() ![]() {$MODE OBJFPC} {$APPTYPE GUI} результат аналогичный. Это сообщение было перенесено сюда или объединено из темы "Особенности программирования в TMT/FPC" |
![]() |
Сообщ.
#17
,
|
|
Цитата Oleg_Z, 13.11.04, 20:29 Результат аналогичный, т.к. тоже указана директива GUIрезультат аналогичный. Это сообщение было перенесено сюда или объединено из темы "Особенности программирования в TMT/FPC" |
Сообщ.
#18
,
|
|
|
А что делать, если в программе используется Turbo Vision?
Из всех 32-битных компиляторов я знаю только один, который поддерживает Turbo Vision - это Virtual Pascal |
![]() |
Сообщ.
#19
,
|
|
Цитата Arsuit @ Из всех 32-битных компиляторов я знаю только один, который поддерживает Turbo Vision - это Virtual Pascal ![]() Также есть и в ТМТ. Во Free Pascal есть FVision - аналог Турбо Вижн. |
Сообщ.
#20
,
|
|
|
Цитата Romtek @ Также есть и в ТМТ ЧТО?! Romtek, ты хочешь сказать что в ТМТ есть модуль App? Или как он там называется? Ни разу не видел! |
Сообщ.
#21
,
|
|
|
В TP7 часто использовал у строки нулевой элемент для определения длинны.
![]() ![]() var s:string; begin writeln(ORD(s[o])) {вывести текущую длинну строки s} end. В FPC этот трюк не проходит. Приходится использовать length. оффтоп Вот говорила мне мама не использовать нестандарных приемов ![]() |
Сообщ.
#22
,
|
|
|
FPC 1.0.10
Обнаружил: при использовании класса Thread (fcl), необходимо следить за возможными ошибками. Так если два паралельных процесса что-то выводят на консоль, может получиться, что когда один процесс будет что-то выводить, консоль будет занята, и произойдет ошибка. Это сообщение было перенесено сюда или объединено из темы "Особенности программирования в TMT/FPC" |
![]() |
Сообщ.
#23
,
|
|
Oleg_Z, указывай версию компилятора тоже. Кроме того, не всем ясно, что речь идёт именно о компиляторе FPC.
Это сообщение было перенесено сюда или объединено из темы "Особенности программирования в TMT/FPC" |
![]() |
Сообщ.
#24
,
|
|
Цитата Arsuit @ ты хочешь сказать что в ТМТ есть модуль App? Или как он там называется? Ни разу не видел! ![]() А то, что ты его ни разу не видел, не говорит о том, что он не существует. |
Сообщ.
#25
,
|
|
|
Я переношу программу из BP 7.0 с Turbo Vision
У меня есть Virtual Pascal 2.1.279 с Turbo Vision. Все идет нормально пока непопадается модуль owindows из BP Где взять этот модуль и(или) как(на что) его можно заменить? |
![]() |
Сообщ.
#26
,
|
|
Кстати, с Борланд Паскаль была та же фигня.
Вроде, первая буква в слове owindows означает Object - пробуй убрать букву о. Её позже убрали. Кстати, под какую платформу компилируешь? |
Сообщ.
#27
,
|
|
|
Компилирую под win32
C:\VP21\BIN.W32\AL.PAS(219): Error 150: Method identifier expected Tdialog.WMCommand(Msg); .........^ Error: return code = 150. |
![]() |
Сообщ.
#28
,
|
|
Возможно, в объекте Tdialog не определён метод WMCommand. Хотя должен, по идее.
Покажи текст кода (прикрепи к сообщению). |
Сообщ.
#29
,
|
|
|
вот тут клок из начала
![]() ![]() PDialogDir = ^TDialogDir; TDialogDir = Object(TDialog) List_dir,List_disc:PListBox; Constructor Init(AParent: Trect); Function CanClose: Boolean; Virtual; Procedure SetupWindow; Virtual; procedure WMInitDialog(var Msg: TMessage); virtual wm_First + wm_InitDialog; procedure WMCOMMAND(var Msg: TMessage); virtual WM_COMMAND; Procedure WM_CTLCOLOR(var Msg: TMessage); virtual WM_CTLColor; end; А вот сама процедура ![]() ![]() procedure TDialogdir.WMcommand(var Msg: TMessage); var DirInfo: TSearchRec; v:word; s:string[4]; begin Tdialog.WMCommand(Msg); {вот тут ругается} case Msg.LParamHi of и т.д. |
![]() |
Сообщ.
#30
,
|
|
Насколько я понимаю, это не Турбо Вижн, а ObjectsWindows (OWL) - это разные вещи.
Виртуальный Паскаль поддерживает OWL? |