Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Основная";
Текущий архив: 2002.04.18;
Скачать: [xml.tar.bz2];

Вниз

Resourse File   Найти похожие ветки 

 
P.   (2002-04-05 18:48) [0]

Написано:
"Создать исходный файл ресурсов, куда можно включить и поименовать требуемые файлы с расширением BMP, к примеру:
- inout BITMAP "inout.bmp"
Сохранить этот файл с расширением RC.


Кто-нибудь может пояснить, а то я нихрена не понял(что значит "создать исходный файл ресурсов" и как сохранить ОДИН файл с расширением RC, когда рисунков штук 10).
Буду очень признателен.


 
aus   (2002-04-05 19:09) [1]

Меню Tools - Image Editor


 
Юрий Зотов   (2002-04-05 21:02) [2]

1. Обычным текстовым редактором в каталоге проекта создаем файл MyRes.rc с таким текстом:

BMP1 BITMAP "С:\Path1\File1.bmp"
BMP2 BITMAP "D:\Path2\File2.bmp"

и т.д. - хоть 10 картинок, хоть 110.

2. Из командной строки Даем команду
BRCC32 MyRes.rc
и в итоге там же появляется файл MyRes.res.

3. Подключаем его к программе:
{$R MyRes.res}

И все. Теперь все картинки будут сидеть внутри самого EXE - в его ресурсах. Доступны они по именам BMP1, BMP2 и т.д.


 
Vcoder   (2002-04-05 21:55) [3]

Для чтения ресурса можно применить следующую процедуру:

procedure TForm1.Button1Click(Sender: TObject);
var
MyRes : TResourceStream;
begin
MyRes:=TResourceStream.Create(HInstance,"Bmp1",PChar("RT_BITMAP"));
try
Image1.Picture.Bitmap.LoadFromStream(MyRes);
finally
MyRes.Free;
end;
end;


А теперь уже фантазируй как тебе надо считывать все твои картинки: писать для каждого свою процедуру, передавать имя ресурса как параметр, создать массив... Все зависит от конкретной задачи.

PS. Кстати. У TBitmap есть функция LoadFromResourceName. Однако Image1.Picture.Bitmap.LoadFromResourceName(HInstance,"Bmp1) вызывает ошибку "ресурс не найден". Может кто знает, в чем дело?


 
Anatoly Podgoretsky   (2002-04-05 22:00) [4]

BMP1


 
Vcoder   (2002-04-06 10:47) [5]


> Anatoly Podgoretsky © (05.04.02 22:00)


??? Не понял. Что это значит?
""Bmp1" - это конечно опечатка ЗДЕСЬ, в программе написано "bmp1".


 
Anatoly Podgoretsky   (2002-04-06 10:52) [6]

Попробуй написать "BMP1"


 
P.   (2002-04-06 11:51) [7]


> 2. Из командной строки Даем команду
> BRCC32 MyRes.rc

Я набрал это в командной строке, меня кинуло на сервак этого BRCC32(прямо так и назывется) и предложили найти MeRes.rc на их сайте... :( ???


 
P.   (2002-04-06 12:18) [8]


> Я набрал это в командной строке, меня кинуло на сервак этого
> BRCC32(прямо так и назывется) и предложили найти MeRes.rc
> на их сайте... :( ???

Это я сделал.
SpeedButton1.Glyph.LoadFromResourceName(HInstance,"bitmap.res");
А это действительно не работает. Пишет что ресурс не найден.


 
sunwheel   (2002-04-06 12:33) [9]

>P. (06.04.02 11:51)
Интересный подход к созданию res файлов. :)

Имелась ввиду коммандная строка : Пуск>Выполнить> и т.д.


 
P.   (2002-04-06 13:25) [10]

Все эти командные строки вообще здесь ни к чему, достаточно нажать на файле(*.RC) правой кнопкой, открыть с помощью... и выбрать BRCC32.

PS А
SpeedButton1.Glyph.LoadFromResourceName(HInstance,"bitmap.res");

всё равно выдаёт ошибку.


 
[MC]NuClon   (2002-04-06 14:26) [11]

А не кажется ли вам, что параметры метода
LoadFromResourceName()
1) Handle ресурса (hInstance, правильно вроде)
2) ID рисунка в ресурсе (в данном случае BMP1 или BMP2


 
Anatoly Podgoretsky   (2002-04-06 14:32) [12]

P. (06.04.02 11:51)
Затем тебе BRCC32, у тебя же Д6
"BITMAP.RES"


 
Anatoly Podgoretsky   (2002-04-06 14:33) [13]

Но мне кажется ты перепутал ресурс и именем ресурсного файла, наверно все таки "BMP1"


 
Alex_LG   (2002-04-06 17:53) [14]


> Anatoly Podgoretsky © (06.04.02 14:32)
> P. (06.04.02 11:51)
> Затем тебе BRCC32, у тебя же Д6
> "BITMAP.RES"

а как в D6 делается?


 
Anatoly Podgoretsky   (2002-04-06 18:27) [15]

Alex_LG © (06.04.02 17:53)
Подключи к проекту, не знаю как в Д6 у меня нет. А в Д5 add


 
P.   (2002-04-06 18:45) [16]

Пффф..... :) Народ, вы меня извиниет, что я такой тупой :)
Вот есть .res, есть SpeedButton, как из ресурса извлечь картинку для этого SpeedButton, .res я уже сделал и подключил...

НУ PLZ...


 
Suntechnic   (2002-04-06 20:46) [17]

Ну тебе ж сказали как!? см. [MC]NuClon (06.04.02 14:26) и ответы Anatoly Podgoretsky ©


 
Anatoly Podgoretsky   (2002-04-06 20:50) [18]

2P. если не понял, то вот хинт, я все время указываю имя ресурса БОЛЬШИМИ буквами


 
Suntechnic   (2002-04-06 21:06) [19]

>Anatoly Podgoretsky © (06.04.02 20:50)
Да на самом деле можно любыми буквами. Эта ф-ция case insensitivity.


 
P.   (2002-04-07 15:52) [20]

Всё понятно.
Последний вопрос.
Между
BMP1 BITMAP "С:\Path1\File1.bmp"
BMP2 BITMAP "D:\Path2\File2.bmp"
ничего не надо ставить? Запятая там или точка с запятой? А то если несколько картинок он не хочет компилировать(а с одной работает).


 
P.   (2002-04-07 15:58) [21]

Не надо:)


 
Anatoly Podgoretsky   (2002-04-07 16:30) [22]

Все написано правильно


 
P.   (2002-04-07 16:42) [23]

Да это я кавычку не поставил.

ЗЫ Всем спасибо.
[MC]NuClon, тебе отдельное:)



Страницы: 1 вся ветка

Форум: "Основная";
Текущий архив: 2002.04.18;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.49 MB
Время: 0.007 c
4-57920
Пахан
2002-02-16 13:24
2002.04.18
Вопрос


1-57775
VS2001
2002-04-01 15:59
2002.04.18
Распаковка архива из памяти (TMemoryStream)


3-57591
sad
2002-03-21 14:19
2002.04.18
Опять про воостановление индексов в Paradox


14-57847
Dima-k17
2002-03-05 16:19
2002.04.18
Лицей при МИФИ(1511)


3-57604
a_k
2002-03-27 13:16
2002.04.18
SQL-запрос





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский