Помощь начинающему

Форум для изучающих FPC и их учителей.

Модератор: Модераторы

Re: Помощь начинающему

Сообщение Leon » 31.12.2012 01:18:11

Ребята.кто знает.Я уже замаялся.Требуется сменить иконку в программе Лазаруса.Ну чтоб моя программа в папке была не с синим кошачьим ногтем,а с каким-нить цветком или еще чего там.Захожу в свойства проекта там где меняются иконки.Удаляю их коготь и даю ссылку на свою картинку.Вроде принимает.Проблемы начинаются при компиляции.Пишет "не могу скомпилировать ресурс".Выбрасываешь иконку вообще - дело идет.Пробовал уже разные форматы и размеры,разные папки с картинками.Все то же.Что за х..нь? Глюки Лазаруса или я что-то не так делаю? Спасибо.
Leon
новенький
 
Сообщения: 65
Зарегистрирован: 30.03.2011 09:27:02

Re: Помощь начинающему

Сообщение Little_Roo » 31.12.2012 03:06:48

Размер выдерживаем 32х32 ??? Или формат графики левый...или битый... :(
Аватара пользователя
Little_Roo
энтузиаст
 
Сообщения: 639
Зарегистрирован: 27.02.2009 19:56:36
Откуда: Санкт-Петербург

Re: Помощь начинающему

Сообщение Leon » 31.12.2012 12:27:35

Размер дал уже 30х30.Пробовал форматы JPG,BMP,ICO,PNG.Кстати,загрузчик в строке перечисления допустимых форматов именно их и перечисляет.А под родным лазаровским лаптем в квадратике есть шкала с ползунком,которая позволяет растягивать эту иконку аж на 256х256.Кому нужны такие большие иконки? Кстати посмотрел файл ICO этого самого лазаровского лаптя программой MediaInfo. Так там оказался целый пакет иконок разных размеров.
А в моем случае я все вроде сделал правильно.И графика вроде не битая,вьюверы видят ее без вопросов.И не могут же все форматы быть битыми! Это нонсенс. Отладчик английским пишет,что проблема компиляции файла ресурсов.Для более полной информации воспользуйтесь -vt. Куда ее эту -vt сунуть? Еще напишу че-нибудь,что слетит даже то,что есть.Вобщем такая вот морока.
Leon
новенький
 
Сообщения: 65
Зарегистрирован: 30.03.2011 09:27:02

Re: Помощь начинающему

Сообщение iskander » 31.12.2012 14:27:33

Leon, можете показать текст файла проекта (*.lpr)?
iskander
энтузиаст
 
Сообщения: 606
Зарегистрирован: 08.01.2012 18:43:34

Re: Помощь начинающему

Сообщение Leon » 01.01.2013 01:12:10

Пожалуйста.

program project1;

{$mode objfpc}{$H+}

uses
{$IFDEF UNIX}{$IFDEF UseCThreads}
cthreads,
{$ENDIF}{$ENDIF}
{Interfaces,} // this includes the LCL widgetset
Forms, Unit1, unit2, Interfaces;

{$IFDEF WINDOWS}{$R project1.rc}{$ENDIF}

{$R *.res}

begin
Application.Title:='myprog';
Application.Initialize;
Application.CreateForm(TForm1, Form1);
Application.CreateForm(TForm2, Form2);
Application.Run;
end.

На все это добро компилятор выдает вот что:

Compiling resource project1.or
project1.lpr(22,1) Error: Error while compiling resources. Compile with -vd for more details. Check for duplicates.
project1.lpr(22,1) Fatal: There were 1 errors compiling module, stopping

Поди-ка разберись чего он хочет.22-я строка как раз и есть end.
Leon
новенький
 
Сообщения: 65
Зарегистрирован: 30.03.2011 09:27:02

Re: Помощь начинающему

Сообщение Ask » 01.01.2013 07:37:36

Это какая-то старая версия Лазаруса, новые не пишут {$R project1.rc}
Ask
постоялец
 
Сообщения: 163
Зарегистрирован: 25.12.2008 03:51:37

Re: Помощь начинающему

Сообщение iskander » 01.01.2013 09:37:59

Leon, попробуйте закомментировать строку
Код: Выделить всё
{$IFDEF WINDOWS}{$R project1.rc}{$ENDIF}
iskander
энтузиаст
 
Сообщения: 606
Зарегистрирован: 08.01.2012 18:43:34

Re: Помощь начинающему

Сообщение fpbt » 02.01.2013 13:36:17

Здравствуйте.

Подскажите, модуль "TlHelp32" можно заменить на "JwaTlHelp32" или может чем-то другим? (сам TlHelp32 не нашел)
fpbt
новенький
 
Сообщения: 17
Зарегистрирован: 27.09.2011 21:48:35

Re: Помощь начинающему

Сообщение Leon » 02.01.2013 19:37:21

Да,действительно.Программу писал еще на старых Лазарусах.Поэтому код еще их.Теперь стоит 1.0.4 Вот он и выдает эти фокусы.Самое интересное,что буквально сегодня завел новый проект,сунул туда картинку 80х120 и все прошло как по-салу.Никто даже и не возмутился о каких-либо размерах.Программа сама переработала иконку под приемлемые размеры.А вот старая программа почему-то неспособна к сим трюкам.Ругается компилятор и все... :roll:
Leon
новенький
 
Сообщения: 65
Зарегистрирован: 30.03.2011 09:27:02

Re: Помощь начинающему

Сообщение Leon » 05.01.2013 01:58:15

Здравствуйте.Такая вот задачка.Накатал я праздниками программку,которая обслуживает АЦП.Это определенная аппаратная заморочка: инициализация интерфейсов,портов и проч.Вобщем все работает,если ... Если вдругна пару секунд пропадет свет или даже пройдет сетевая помеха,аппарат зависает.Требуется заново перезапускать программу,чтобы все восстановить.
ВОПРОС: Нельзя ли как-то изнутри программы избежать этой напасти,т.е. делать рестарт этой же программы изнутри самой программы? Похоже на "масло масляное",ну а вдруг есть такой программный фокус... Подскажите,уважаемые эксперты.
Leon
новенький
 
Сообщения: 65
Зарегистрирован: 30.03.2011 09:27:02

Re: Помощь начинающему

Сообщение Vadim » 05.01.2013 06:44:01

Этот "программный фокус" делается очень просто - Источник Бесперебойного Питания. Программирование в Вашем случае даже рядом не валялось. ;)
Vadim
долгожитель
 
Сообщения: 4112
Зарегистрирован: 05.10.2006 08:52:59
Откуда: Красноярск

Re: Помощь начинающему

Сообщение Leon » 05.01.2013 13:16:01

Увы я тоже ни к чему лучшему не догадался.Пришлось приобрести ИБП...

Теперь следующая задачка.Есть некоторые стандартные цвета С1 и С2.И есть цвет опытного образца ExColor.Все естественно TColor.Требуется программно определить (ну,скажем в %) к какому цвету из двух стандартных ближе опытный образец.Мои мысли:
1.Сравнивать десятичные числа цветов ExColor с С1 и С2.
2.Сравнивать по компонентам R c R,G c G,B c B. Но тогда как все свести воедино? Пропорции ведь окажутся разными,а как сделать вывод о схожести в цифровом виде?
Leon
новенький
 
Сообщения: 65
Зарегистрирован: 30.03.2011 09:27:02

Re: Помощь начинающему

Сообщение Vadim » 05.01.2013 15:11:03

Надо вычислить среднеарифмитическое у цветов С1 и С2, и сравнивать с ним ExColor. По любому кто-то, С1 или С2 больше другдруга. Вот и смотрите, если ExColor меньше среднеарифметического, значит этот цвет ближе к меньшему цвету, если больше, то ближе к большему. ;)
Vadim
долгожитель
 
Сообщения: 4112
Зарегистрирован: 05.10.2006 08:52:59
Откуда: Красноярск

Re: Помощь начинающему

Сообщение Vapaamies » 06.01.2013 01:49:35

Почитать в Википедии, как делается квантование в GIF. Мне его как-то даже на SQL пришлось реализовывать.
Аватара пользователя
Vapaamies
постоялец
 
Сообщения: 292
Зарегистрирован: 24.07.2012 22:37:59
Откуда: Санкт-Петербург

Re: Помощь начинающему

Сообщение nikolay61 » 07.01.2013 00:04:51

Где ошибка?
program pomylka;

uses crt;
var i,a:real;
BEGIN
clrscr;
for i:=8 to 10 do
a:=sin(i);
reADLN;
END.

Добавлено спустя 3 минуты 2 секунды:
Что то не так работает. Слово не выдает.
program for26;
{ Заданы 2 слова a и b. Можно ли получить из слова a,
вычеркивание некоторого кол-ва букв, слово b. }

uses crt;
var i,j,m,n : integer;
a,b,d,e : string;
begin
clrscr;
write('введите текст a=');readln(a);
write('введите текст b=');readln(b);
n:=length(a);m:=length(b);e:=b;
if n<m then halt;
for i:=1 to n do
for j:=1 to m do
if a[i]=b[j] then begin
d:=d+a[i];
delete(b,j,1);
end;
if d=e then write('Да')
else write('Нет');

readln;
end.
nikolay61
новенький
 
Сообщения: 27
Зарегистрирован: 15.08.2012 16:58:46

Пред.След.

Вернуться в Обучение Free Pascal

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

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

Рейтинг@Mail.ru