Модераторы: volvo877, Snowy, MetalFan
  

Поиск:

Закрытая темаСоздание новой темы Создание опроса
> Turbo Vision 
:(
    Опции темы
WolfON
Дата 16.6.2005, 17:30 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 604
Регистрация: 19.7.2004

Репутация: нет
Всего: 8



Есть такой немалоизвестный компонент для Turbo Pascal, называется Turbo Vision.
Так вот, менюхи он хранит в файле .MNU, кто знает как гео редактировать вручную или программно?
PM MAIL ICQ   Вверх
Akina
Дата 16.6.2005, 18:06 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Советчик
****


Профиль
Группа: Модератор
Сообщений: 20581
Регистрация: 8.4.2004
Где: Зеленоград

Репутация: нет
Всего: 454



Там есть тулза для визуального их создания и редактирования. Но можно и руками.


--------------------
 О(б)суждение моих действий - в соответствующей теме, пожалуйста. Или в РМ. И высшая инстанция - Администрация форума.

PM MAIL WWW ICQ Jabber   Вверх
WolfON
Дата 16.6.2005, 18:26 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 604
Регистрация: 19.7.2004

Репутация: нет
Всего: 8



Это хорошо, что она есть, но нельзя было-бы на нее ссылку дать?

И если руками, то как?
PM MAIL ICQ   Вверх
TP@MB@Y
Дата 17.6.2005, 19:49 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 370
Регистрация: 18.12.2004
Где: Москва

Репутация: нет
Всего: 4



WolfON
руками руками smile

Поищи хелп.

Вот например как создается нижний меню-бар:
Код

procedure TMyApp.InitMenuBar;
var R: TRect;
begin
  GetExtent(R);
  R.B.Y := R.A.Y + 1;
  MenuBar := New(PMenuBar, Init(R, NewMenu(
    NewSubMenu('~F~ile', hcNoContext, NewMenu(
      NewItem('~O~pen', 'F3', kbF3, cmFileOpen, hcNoContext,
      NewItem('~N~ew', 'F4', kbF4, cmNewWin, hcNoContext,
      NewLine(
      NewItem('E~x~it', 'Alt-X', kbAltX, cmQuit, hcNoContext,
      nil))))),
    NewSubMenu('~W~indow', hcNoContext, NewMenu(
      NewItem('~N~ext', 'F6', kbF6, cmNext, hcNoContext,
      NewItem('~Z~oom', 'F5', kbF5, cmZoom, hcNoContext,
      NewItem('~D~ialog', 'F2', kbF2, cmNewDialog, hcNoContext,
      nil)))),
    nil))
  )));
end;

PM   Вверх
WolfON
Дата 18.6.2005, 15:27 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 604
Регистрация: 19.7.2004

Репутация: нет
Всего: 8



TP@MB@Y
Как создается - я знаю.
Но в .mnu файле такая белиберда, точнее я там могу поменять простейшие параметры, вроде адреса процедуры, кол-ва симаволов в назавнии или само название, но что-нибудь удалить не получается.
PM MAIL ICQ   Вверх
Гость_Van
Дата 13.8.2005, 08:03 (ссылка)    |    (голосов: 0) Загрузка ... Загрузка ... Быстрая цитата Цитата


Unregistered











Помогите пожалуйста с программой. Она зависает при запуски, и воводит сообщ:
прогр. виполнила недопустимую операцию...

Место ошибки 0D70:0010
Прерывания : Нет

program ViewText;
uses App, Objects, Drivers, Menus, Views;

var
lines:PCollection;

type
TMyApp = object(TApplication)
procedure Run;Virtual;
end;

type
PInterior = ^TInterior;
TInterior = object(TScroller)
constructor Init(var R:TRect; SX, SY:PScrollBar);
procedure Draw;Virtual;
end;


procedure TMyApp.Run;
var
R:Trect;
W:Pwindow;
s, name:string;
f:text;
begin
name := copy(ParamStr(0),1,pos('.',paramStr(0)))+'PAS';
Lines := new(PCollection, Init(10, 5));
assign(f, name);
{$I-}
reset(f);
{$I+}
if ioResult = 0 then begin
with lines^ do while not EOF(f) do
begin
readln(f, s);
Insert(newStr(s))
end;
close(f)
end
else
Lines^.Insert(newStr('?Ґв ¤®бвгЇ  Є д ©«г '+name));
DeskTop^.GetExtent®;
w := new(PWindow,Init(R,'?а®б¬®ва д ©« '+Name, 0));
with W^ do
begin
GetClipRect®;
R.Grow(-1, -1);
Insert(new(PInterior, Init(R, standardScrollBar(sbHorizontal+
sbHandleKeyBoard), StandardScrollBar(sbVertical + sbHandleKeyBoard))));
end;
DeskTop^.Insert(W);
inherited Run;
end;

constructor TInterior.Init;
begin
inherited init(R, SX, SY);
growMode := gfGrowHiX + gfGrowHiY;
setLimit(128, Lines^.count-1);
end;

procedure TInterior.Draw;
var
Y:integer;
B:TDrawBuffer;
S:string;
begin
for Y := 0 to pred(size.Y) do
begin
MoveChar(B, ' ',GetColor(1), size.X);
if (Y + Delta.Y < lines^.Count) and (lines^.At(Y+Delta.Y) = nil) then
begin
s := PString(lines^.At(Y+Delta.Y))^;
MoveStr(B,copy(s, Delta.X+1, length(s)-Delta.X), getColor(1));
end;
writeLine(0, Y, size.X, 1, B);
end;
end;

var
p:TMyApp;
begin
p.run;
p.init;
p.done;
end.








  Вверх
volvo877
Дата 13.8.2005, 12:58 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Комодератор
Сообщений: 2073
Регистрация: 15.11.2004

Репутация: 2
Всего: 116



Гость_Van
Может все-таки, сначала инициализировать, а потом-запускать?
Код
var
  p:TMyApp;
begin
  p.init; { !!! Сначала - Init !!!}
  p.run;
  p.done;
end.

PM MAIL   Вверх
Гость_Van
Дата 13.8.2005, 13:35 (ссылка)    |    (голосов: 0) Загрузка ... Загрузка ... Быстрая цитата Цитата


Unregistered











спасибо!!! за ответ, большое!!
  Вверх
Fedor
Дата 14.8.2005, 10:50 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Днепрянин
****


Профиль
Группа: Участник
Сообщений: 2090
Регистрация: 8.2.2003
Где: Великий

Репутация: нет
Всего: 32



Модератор: Один топик - один вопрос. Тема закрыта


--------------------
Мы - Днепряне. Мы всех сильней.
PM ICQ   Вверх
  
Закрытая темаСоздание новой темы Создание опроса
Правила форума "Delphi"
THandle
Rrader
volvo877

Запрещается!

1. Обсуждать и делится взломанными компонентами или программным обеспечением

2. Публиковать ссылки на варез

3. Оффтопить

  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь
  • 90% ответов на свои вопросы можно найти в DRKB (Delphi Russian Knowledge Base) - крупнейшем в рунете сборнике материалов по Дельфи

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, THandle, Rrader, volvo877.

 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Object Pascal: кроссплатформенные технологии | Следующая тема »


 




[ Время генерации скрипта: 0.0698 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.