Pirs |
Отправлено: 05.03.2004, 00:48 |
|
Дежурный стрелочник
Группа: Участник
Сообщений: 39
|
Не пойму как из объекта TJPEGImage, после того как в него через LoadFromFile(), загружен файл, как вывести из него картинку на нужный мне TBitmap ?
Методы вроде:
bitmap->Assign(jpgpicture) дают черный квадрат |
|
Maxman |
Отправлено: 05.03.2004, 08:07 |
|
Не зарегистрирован
|
Проверил все работает
TJPEGImage* jpgpicture = new TJPEGImage();
jpgpicture->LoadFromFile("1.jpg");
Graphics::TBitmap* bitmap = new Graphics::TBitmap;
bitmap->Assign(jpgpicture);
Image1->Picture->Assign(bitmap);
|
|
Pirs |
Отправлено: 05.03.2004, 17:22 |
|
Дежурный стрелочник
Группа: Участник
Сообщений: 39
|
Сомневался, но все таки решил написать, хотя все будут смеятся. В первые раза открывал картинку Rtcolwi1.jpg(340х500) , которая из каких-то папок Worda2000. Там космонавт летит на фоне черного космоса.Так вот компонент Image в который через Аssign грузилась картинка, был маленький где-то 50х50, и надо же! как раз этот верхний угол попадал на фон черного космоса и в итоге Timage был черный, а поскольку маленького размера, то остальной картинки не было видно и я решил, что делаю что-то неправильно. Вывод: грузите картинки которые подходят под размер компонента.
|
|
Asher |
Отправлено: 05.03.2004, 20:13 |
|
Мастер участка
Группа: Модератор
Сообщений: 550
|
Привет всем.
QUOTE | Вывод: грузите картинки которые подходят под размер компонента. |
или не забывайте про свойство Stretch
|
|
olegenty |
Отправлено: 06.03.2004, 08:28 |
|
Ветеран
Группа: Модератор
Сообщений: 2412
|
Или пользутесь ImageLib, имеющий место на закрытом форуме.
|
|
Pirs |
Отправлено: 06.03.2004, 11:11 |
|
Дежурный стрелочник
Группа: Участник
Сообщений: 39
|
Я пользовал раньше ImageEn, но лишний мегабайт к ехе. ради загрузки jpg ? |
|
olegenty |
Отправлено: 06.03.2004, 15:25 |
|
Ветеран
Группа: Модератор
Сообщений: 2412
|
Мегабайто мбольше, или меньше, это смотри на структуру клиентских машин. У нас сейчас стандарт: цилера 2000 + 256 RAM. Веришь-нет, плюс-минус мегабайт — не критично. Так чего тогда оптимизировать сию мелочь, если всё летает на ура, а напрягаться не надо :-))
|
|
Gedeon |
Отправлено: 09.03.2004, 10:25 |
|
Ветеран
Группа: Модератор
Сообщений: 1742
|
QUOTE (olegenty @ 06/03/2004, 16:27) | Мегабайто мбольше, или меньше, это смотри на структуру клиентских машин. У нас сейчас стандарт: цилера 2000 + 256 RAM. Веришь-нет, плюс-минус мегабайт — не критично. Так чего тогда оптимизировать сию мелочь, если всё летает на ура, а напрягаться не надо :-)) |
Ну не совсем я с этим согласен, тоже у нас стоят машины не слабые и летает все, но как-то остается еще самоуважение, что ли не знаю как это назвать, а все проблемы опять же из-за бездарно сделаного борландом компилер+линкер, который к проекту лепит все, что есть в библиотеке, не разбираясь, что используется, а что нет. В последнее время все чаще посещает мысль отказаться от билдера и перейти на Visual C++. Хотя обидно когда-то компиляторы борланда были лучшими.
|
|
olegenty |
Отправлено: 09.03.2004, 14:28 |
|
Ветеран
Группа: Модератор
Сообщений: 2412
|
Идейно я с тобой согласен, но состояние нашей разработки и условий сейчас таково, что я вынужден в основном упирать работу в максимум функциональности при минимуме времени на разработку. Сам понимаешь, если велосипед уже сделан, я не буду разбираться сам. А оптимизацию/разборки сделаю чуть позже. Всё равно стараюсь писать классово, просто ядро подправлю (как в случае с VersionInfo).
|
|
olegenty |
Отправлено: 09.03.2004, 14:34 |
|
Ветеран
Группа: Модератор
Сообщений: 2412
|
А вот насчёт Visual... Я давно об этом думал. VC++ 6 при визуализации вынуждал всё прописывать руками... Увы, я пишу и середину, и интерфейс. Если бы я писал только середину, я бы выбрал именно VС++, и только из-за интерфейса пишу на Buildere. А если совсем честно, вернуть меня чуть-чуть назад, года на 4, и я стал бы работать на связке Visual C++ + Visual Basic. Ядро на Visual C++, интерфейс — на Visual Basic.
|
|
Gedeon |
Отправлено: 09.03.2004, 14:44 |
|
Ветеран
Группа: Модератор
Сообщений: 1742
|
Сейчас есть Visual C# от мелкомягких — очень мне понравился.
|
|
olegenty |
Отправлено: 09.03.2004, 16:42 |
|
Ветеран
Группа: Модератор
Сообщений: 2412
|
Отошли от темы... ))
К сожалению, в С# нет множественного наследования, к которому я привык.
Плюс, надо контролы искать. Я с деревьями (состав автомобиля/узла) работаю, привык к TElTree — дерево и грид в одном флаконе. Весь интерфейс на этом нарисован. Аналогичного ActiveX компонента не встречал. То же касается FIBPlus.
|
|