IPB
ЛогинПароль:

> Прочтите прежде чем задавать вопрос!

1. Заголовок темы должен быть информативным. В противном случае тема удаляется ...
2. Все тексты программ должны помещаться в теги [code=pas] ... [/code], либо быть опубликованы на нашем PasteBin в режиме вечного хранения.
3. Прежде чем задавать вопрос, см. "FAQ", если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно такую задачу уже решали!
4. Не предлагайте свои решения на других языках, кроме Паскаля (исключение - только с согласия модератора).
5. НЕ используйте форум для личного общения, все что не относится к обсуждению темы - на PM!
6. Одна тема - один вопрос (задача)
7. Проверяйте программы перед тем, как разместить их на форуме!!!
8. Спрашивайте и отвечайте четко и по существу!!!

 
 Ответить  Открыть новую тему 
> Formating in Turbo Vision, Вывод элемента с правого края
сообщение
Сообщение #1


Гость






Помогите пожалуйста с одной маленькой (для меня) проблемой...
Мне нужно вывести записи на эран, где элементы "god" и "cena" должны выводится не с левого края а с правого своей области.
Элементы все string.
Знаю как в числовых элементах делается:
god,'':(11-length(god))
а с символьными не могу разобратся...


cena:string[8];
god:string[11];


Procedure TInterior.ReadFile;
var k:integer;
s,shapka:String;
data:autopark;
t:text;
begin
PS:=New(PStringCollection,Init(100,10));
seek(f,0);
shapka:=' Название | Марка | Год | Кузов | цвет | цена  ';
PS^.insert(NewStr(shapka));
while not (EOF(f) or LowMemory) do
begin
read(f,data);
with data do
begin
s:=nazvanie;
while Length(s)<Lnazvanie do s:=s+' ';
s:=s+marka;
while Length(s)<Lnazvanie+Lmarka do s:=s+' ';
s:=s+god;
while Length(s)<Lnazvanie+Lmarka+Lgod do s:=s+' ';
s:=s+kuzov;
while Length(s)<Lnazvanie+Lmarka+Lgod+Lkuzov do s:=s+' ';
s:=s+cvet;
while Length(s)<Lnazvanie+Lmarka+Lgod+Lkuzov+Lcvet do s:=s+' ';
s:=s+cena;
end;
if s<>' ' then PS^.Insert(NewStr(S));
end;
Location:=0;
end;

 К началу страницы 
+ Ответить 
сообщение
Сообщение #2


Гуру
*****

Группа: Пользователи
Сообщений: 1 220
Пол: Мужской

Репутация: -  16  +


GotoXY(80-Length(stroka),y);
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #3


Гость






Ага...и куда его прописывать прикажите? Пробывал, но ниче не передвигает!
 К началу страницы 
+ Ответить 
сообщение
Сообщение #4


Гость






Цитата
Ага...и куда его прописывать прикажите?
А ты что, показал где-то как ты вообще выводишь что-то на экран? Или ты хочешь форматировать строку в памяти?
 К началу страницы 
+ Ответить 
сообщение
Сообщение #5


Гость






Выводится она у меня так:
Название | Марка | Год | Кузов | Цвет | Цена
Опель Омега 1995 Седан Белый 8000

А нужно чтоб было так:
Название | Марка | Год | Кузов | Цвет | Цена
Опель Омега 1995 Седан Белый 8000
 К началу страницы 
+ Ответить 
сообщение
Сообщение #6


Гость






Ой, плохо получилось...
 К началу страницы 
+ Ответить 
сообщение
Сообщение #7


Гость






Ой, плохо получилось...
 К началу страницы 
+ Ответить 
сообщение
Сообщение #8


Гость






Выводится она у меня так:
Название..|..Марка..|....Год....|..Кузов..|..Цвет...|..Цена
Опель........Омега.....1995........Седан.....Белый...8000

А нужно чтоб было так:
Название | Марка | Год | Кузов | Цвет | Цена
Опель........Омега............1995.Седан.....Белый......8000
 К началу страницы 
+ Ответить 
сообщение
Сообщение #9


Гость






Да что такое! wacko.gif


Выводится она у меня так:
Название..|..Марка..|....Год....|..Кузов..|..Цвет...|..Цена
Опель........Омега.....1995........Седан.....Белый...8000

А нужно чтоб было так:
Название..|..Марка..|....Год....|..Кузов..|..Цвет...|..Цена
Опель........Омега............1995.Седан.....Белый......8000
 К началу страницы 
+ Ответить 
сообщение
Сообщение #10


Гуру
*****

Группа: Пользователи
Сообщений: 1 220
Пол: Мужской

Репутация: -  16  +


Нет, тебя спрашивают КАК ты выводишь на экран данные - средствами ТВ или просто write(ln).
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #11


Гость






Средствами ТВ!
 К началу страницы 
+ Ответить 
сообщение
Сообщение #12


Гуру
*****

Группа: Пользователи
Сообщений: 1 220
Пол: Мужской

Репутация: -  16  +



var
R : TRect;
Stroka: String;
...
R.Assign(1,1,79-Length(stroka),1);
Insert(New(PStaticText,Init(R,Stroka)));
...



Сообщение отредактировано: Ozzя -
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #13


Гость







Извиняюсь за назойливость но я в ТВ не очень шарю, не могли б мне тыкнуть пальцем где это вообще прописывать! Прописал в процедуре (см. выше) - выдает ошибку...
 К началу страницы 
+ Ответить 
сообщение
Сообщение #14


Гуру
*****

Группа: Пользователи
Сообщений: 1 220
Пол: Мужской

Репутация: -  16  +


У меня здесь все вставляется в диалог, например:
PTestWin =^TTestWin;
TTestWin = object (TDialog)
Procedure HandleEvent(var Event: TEvent); Virtual;
Procedure Draw; Virtual;
end;

var
d:TestWin;
Далее идет вышеозначенный код
и затем
q:=DeskTop^.ExecView(d);

Но рекомендую почитать книжку по ТВ.



Прикрепленные файлы
Прикрепленный файл  _________TURBO_VISION.ZIP ( 238.54 килобайт ) Кол-во скачиваний: 55
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #15


Гость






OK! Спасибо!
 К началу страницы 
+ Ответить 

 Ответить  Открыть новую тему 
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 





- Текстовая версия 28.09.2020 16:05
500Gb HDD, 6Gb RAM, 2 Cores, 7 EUR в месяц — такие хостинги правда бывают
Связь с администрацией: bu_gen в домене octagram.name