Как да поставите курсори във файл с ресурси
Добър ден на всички Няма проблеми с курсорите, които нарисувах, вмъквам ImageEditor_om, но ImageEditor не зарежда съществуващите курсори, очевидно поради разрешението, така че този метод не работи. Как да бъдем?
включете ги във файла с ресурси
"Как да поставите курсори във файл с ресурси. "> включете ги във файл с ресурси
Вероятно трябваше да попитате как да включите курсори във файл с ресурси.
Майстори, разбирам, че понякога се задават глупави въпроси и вие отговаряте с глупави отговори и имате чувството, че отговарянето на глупави отговори през цялото време е заразно. Какво може да бъде по-лесно от: как да включите курсори във файл с ресурси.
Има опция за вмъкване с помощта на ImageEditora, но не ми хареса.
файлът с ресурси в компилираната форма brcc32 има разширение res, в некомпилираното разширение rc, за какво говорите?
Говоря за механизма за създаване на файл с ресурси, с включването на курсори в него, като цяло. Благодаря на всички, вече намерих отговора. който има нужда от:
> Този метод заобикаля проблемите, свързани с редактора на изображения. > > > Директорията \DELPHI\BIN съдържа помощна програма за команден ред, > наречен BRCC.EXE, който ви позволява да създавате от файлове, съдържащи > изображения/икони, RES файлове, заобикаляйки редактора на изображения. (Въпреки това > Редакторът на изображения работи добре при създаване или > редактиране на файлове с изображения или курсори. Проблемът на > беше импортирането.) > > Компилаторът на ресурсен файл е описан в помощта за Windows API > в главата за инструменти на Windows (където можете също да прочетете за RC. > EXE като BRCC.EXE!). Това ще ви спести малко време! > > > Първо, като използвате Notepad, създайте файл с дефиниция на ресурс > (Определение на ресурс) (текст) с име, да речем,MYRES. > RC (със задължително разширение RC). Поставете всеки върху > на отделен ред, връзки към изображения, икони и др., > които искате да включите в .res файла, например: > > BITMAP1 BITMAP > BITMAP2 BITMAP > КУРСОР1 КУРСОР > ИКОНА1 ИКОНА > След това (това не е задължително, но спестява много време, особено > ако експериментирате), в същата директория създайте BAT- > Файлът, който извиква програмата за компилиране на всеки ресурс: > > "C:\DELPHI\BIN\BRCC/R %1" > Назовете го, да речем, MAKERES.BAT. > Отидете в DOS и в директорията на проекта напишете "MAKERES MYRES. > RC". Дадените ресурси ще бъдат компилирани в нов файл > MYRES.RES, който може да бъде свързан към вашия проект > по старому. Използвайте редактора на изображения, за да проверите и редактирате. >
Грешка cursors.rc 1 74: Невалиден формат на курсора
Веднага се опитах да направя курсори в ImageEditor и по аналогия да създам RES файл. Нямаше проблеми, т.е. причината за грешката е точно в курсорите, а не в механизма за създаване. Някой сблъсквал ли се е с такъв проблем.
странно, същите курсори се зареждат от файлове без никакви проблеми:
Просто бих искал да нося всички курсори с програмата във файла с ресурси, а не един по един.
Курсорът случайно да не е анимиран?
Точно така, курсорите са анимирани. изгасете светлината.
> Майстори, разбирам, понякога се задават глупави въпроси, на които > отговаряте с глупави отговори, усещането е като > отговарянето на глупави отговори през цялото време е заразно.Отново натрупа всички грехове върху другите.
Анатолий, нашата лична несъвместимост не трябва да привлича толкова внимание. Зададох въпрос, чийто отговор беше моят собствен въпрос.Затова не виждам нищо учудващо в направения от мен извод.
Но всъщност сега темата е надхвърлила основния въпрос и сега въпросът е: как да опаковам анимирани курсори във файл с ресурси?
Зададохте въпрос, но след това започнахте да обвинявате участниците във форума, че отново са ви отговорили грешно.
> [12] Zhekson (05.11.08 12:32)Ще ти помогнат, а после ще ме обвиниш в нещо. :)
за какво говориш. С една фраза, цитирана от Анатолий, казах само, че отговорът на моя въпрос не може да бъде мой собствен въпрос. И го направих без такса. Да, имаше известна ирония, но тя не беше обидна, а само подчертаваше особеността на форума, която всеки път трябва да се подчертава.
MYANICURSOR КУРСОР C:\WINDOWS\Cursors\counter.ani
MYANICURSORANIКУРСОР C:\WINDOWS\Cursors\counter.ani
Zhekson (05.11.08 13:01) [15] Не обратното, а както обикновено. Успях да обясня същността само на 10-то съобщение. Е, няма смисъл да давам отговор, Сергей М вече отговори. Анимиран курсор, това не е курсор, а ANICURSOR или RT_DATA.
Изобщо вече става напълно неразбираемо какво се опитвате да ми докажете. )))
Анатолий, очевидно, не е обяснил до 10-ти, защото Сега се появи нов проблем. Ресурсният файл е създаден, свързан, но курсорът по някаква причина не се променя в програмата.
Cursors.rs CURSOR1 ANICURSOR E:\Soft\Borland\Delphi7\Projects\interfer\cross_i.cur CURSOR2 ANICURSOR E:\Soft\Borland\Delphi7\Projects\interfer\cross_il.cur
brcc32.exe Cursors.rs => Cursors.res
процедура TForm1.FormCreate(Подател: TObject); начало
Screen.Cursors[1] := LoadCursor(HInstance,"CURSOR_1"); Screen.Cursors[2] := LoadCursor(HInstance,"CURSOR_2");
процедураTForm1.FormMouseMove(Sender: TObject; Shift: TShiftState; X, Y: Integer); begin if X
CURSOR_1ANICURSOR E:\Soft\Borland\Delphi7\Projects\interfer\cross_i.cur CURSOR_2ANICURSOR E:\Soft\Borland\Delphi7\Projects\interfer\cross_il.cur
> Zhekson (05.11.08 15:54) [19]
> неанимирани сърсори, използващи същата технология, > свържете без проблеми. Каква може да е причината. Защо Screen.Cursors трябва да разбира анимираните курсори?
защото този курсор се зарежда лесно от файла: Screen.Cursors[crMyCursor] := LoadCursorFromFile(PChar(cur));
Тогава възниква друг въпрос и дали курсорите ми са анимирани. На теория да, защото някои са склонни да препълват, освен това са пакетирани в RES файлове само като ANICURSOR.
> Zhekson (05.11.08 16:06) [22]
> брррррррррр. Не ритай, а обяснявай ясно. Затова, IMHO, те критикуват.
rc файл - към студиото, курсорен файл - към услугата за споделяне на файлове.
rc файл в студио [19]: Cursors.rs CURSOR1 ANICURSOR E:\Soft\Borland\Delphi7\Projects\interfer\cross_i.cur CURSOR2 ANICURSOR E:\Soft\Borland\Delphi7\Projects\interfer\cross_il.cur
сега създадох RES файл с един, най-безживият курсор, декларирах го като CURSOR и "картината оживя". Сега ще проверя всички курсори за анимация и ще ги декларирам съответно.
Следното е пример за форма на Delphi, която използва анимиран курсор:
procedure TForm1.Button1Click(Sender: TObject); var h : THandle; begin h := LoadImage(0, "C:\TheWall\Magic.ani", IMAGE_CURSOR, 0, 0, LR_DEFAULTSIZE или LR_LOADFROMFILE); ако h = 0 тогава започва ShowMessage("Курсорът не е зареден") иначе Screen.Cursors[1] := h; Form1.Cursor := 1; край; край;
MYCUR21C:\WINDOWS\CURSORS\METRONOM.ANI
procedure TForm1.Button1Click(Sender: TObject); begin Screen.Cursors[1] := LoadCursor(HInstance, "MYCUR"); Screen.Cursor := 1; end;
ако акцентът е върху факта, че съм написал CURSOR1 в rc и извиквам CURSOR_1 в програмата, тогава се коригирах в следващото съобщение.
Гледайтевнимателнона какво се набляга!
Исках да пъхна всички снимки, курсори в RES файл, за да не "влача" файлове с курсори и други неща с програмата.
))) какъв е акцентът. какво е магическото число и как трябва да се променя в зависимост от броя на файловете.
По-конкретно, в D7, това очевидно е грешка в brcc32
P.S. „Какъв си комплексар обаче, искам само да хвърля монета в една шапка с ушанка“
че преди да затворим темата, че след това тези думи не са верни. същината винаги е по-важна ;)
> Zhekson (05.11.08 17:26) [32]
> P.S. "Какъв си комплексар обаче. Искам да хвърля монета > в шапка с ушанка" Е, какъв е смисълът от двигателя "благодаря"? Най-накрая разбрах мотивите на АП.
И все пак е така.
> как трябва да се променя в зависимост от броя на файловете
> И все пак е така. Sic!
при мен всички останаха доволни, някой получи отговор, някой се заяви, надявам се да е помогнал;), а някой с чувство за постижение може да затвори темата.