Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2007.11.25;
Скачать: CL | DM;

Вниз

Рисунок на форме   Найти похожие ветки 

 
dumka   (2007-10-30 09:27) [0]

Как сделать так, что бы рисунок на форме загружался с папки проекта при запуске программы?


 
dumka   (2007-10-30 09:37) [1]

Например:
procedure TForm5.FormPaint(Sender: TObject);
var
 i, j: integer;
Bitmap: TBitmap;
 MyRect, MyOther: TRect;
begin
 MyRect := Rect(10,10,5000,5000);
   MyOther := Rect(10,111,100, 201);
 Bitmap := TBitmap.Create;
Bitmap.LoadFromFile("C:\Documents and Settings\merlin\Рабочий стол\Для Методиста\Сиреневый пух.bmp");
Как преобразовать последнюю строку, что бы рисунок выводился на форму с текущей папки: Для Методиста\Сиреневый пух.bmp.


 
Рамиль ©   (2007-10-30 09:40) [2]

Кинуть TImage

В OnCreate формы
Image1.Picture.LoadFromFile(ExtractFilePath(ParamStr(0)) + "myimage.jpg)


 
ЮЮ ©   (2007-10-30 09:42) [3]

В обработчике OnOpen или OnShow формы, на которой находится Image1 написать
 Image1.Picture.LoadFromFile(ExtractFilePath(ParamStr(0)) + "Сиреневый пух.bmp");

>procedure TForm5.FormPaint(Sender: TObject);
Слишком разорительно в OnPainе формы каждый раз загружать картинку.

Если картинка всегда одна и та же, проше кинуть TImage на форму и загрузить его в дизайне


 
Рамиль ©   (2007-10-30 09:42) [4]

Можно и через Bitmap, только странные у тебя ректы какие то... куда тебе 5000?


 
Сергей М. ©   (2007-10-30 09:43) [5]


> dumka   (30.10.07 09:37) [1]


Приложение в момент своего исполнения понятия не имеет, где находится проект, при сборке которого был получен исп.модуль этого приложения.


 
Anatoly Podgoretsky ©   (2007-10-30 09:50) [6]

С текущей или с папки проекта, ты уж определись, а может тебе вообще надо из папки с программой?


 
dumka   (2007-10-30 10:03) [7]


> Рамиль

Из Help.

> Anatoly Podgoretsky

А если из папки проекта?


 
Anatoly Podgoretsky ©   (2007-10-30 10:04) [8]

> dumka  (30.10.2007 10:03:07)  [7]

Такой информации в ОС нет, надо ее предоставить программы, например через ИНИ файл.


 
dumka   (2007-10-30 10:08) [9]


> Anatoly Podgoretsky

Я слышала о таком способе но представления смутные.


 
homm ©   (2007-10-30 10:11) [10]

> [7] dumka   (30.10.07 10:03)
> А если из папки проекта?

Папка проекта существует на момент разработки. Зачем пользователям твоей программы папка с твоим проектом? Ты подумай хорошо, может тебе нужна папка с программой?


 
clickmaker ©   (2007-10-30 10:20) [11]

А у сирени есть пух? я думал, только у тополей...


 
dumka   (2007-10-30 10:26) [12]


> clickmaker

Наверное бывает и такой вариант, после ночной смены или после праздников. Но не я же это придумала.


 
dumka   (2007-10-30 10:27) [13]


> homm

Наверное все таки папка с программой


 
homm ©   (2007-10-30 10:30) [14]

> [13] dumka   (30.10.07 10:27)
> Наверное все таки папка с программой

И чЁ? [2] не работает?


 
ЮЮ ©   (2007-10-30 10:37) [15]

> И чЁ? [2] не работает?

+ [1] А то я OnOpen вместо OnCreate придумал какой-то :).


 
Anatoly Podgoretsky ©   (2007-10-30 10:42) [16]


> Наверное все таки папка с программой

Папка с программой - ответ 2


 
dumka   (2007-10-30 10:51) [17]


> homm

Не работает, хотя я сделала гибридный вариант:
Bitmap.LoadFromFile(ExtractFilePath(ParamStr(0)) + "фон.bmp");


 
ЮЮ ©   (2007-10-30 10:55) [18]

Bitmap сам по себе на форме ничего не нарисует.
Ты собираешься "замостить" форму или типа лого картинку повесить?


 
homm ©   (2007-10-30 10:58) [19]

> [17] dumka   (30.10.07 10:51)
> Не работает, хотя я сделала гибридный вариант:

Может в этом дело?
Bitmap.LoadFromFile(ExtractFilePath(ParamStr(0)) + "\фон.bmp");


 
clickmaker ©   (2007-10-30 11:00) [20]

ExtractFilePath уже вернет со слэшем


> [17] dumka   (30.10.07 10:51)

а что такое Bitmap?


 
clickmaker ©   (2007-10-30 11:00) [21]


> > [17] dumka   (30.10.07 10:51)
>
> а что такое Bitmap?

вернее, где код, который собственно рисует его?


 
Anatoly Podgoretsky ©   (2007-10-30 11:07) [22]


> homm ©   (30.10.07 10:58) [19]

Зачем давать заведомо ошибочные советы.


 
ЮЮ ©   (2007-10-30 11:10) [23]

> [20] clickmaker ©   (30.10.07 11:00)
> а что такое Bitmap?


локальный объект в обработчике OnPaint формы :)


 
homm ©   (2007-10-30 11:12) [24]

> [22] Anatoly Podgoretsky ©   (30.10.07 11:07)
> Зачем давать заведомо ошибочные советы.

Для меня не заведомо, компилятора здесь у меня нет, и это был не совет, а вопрос, наводка.
Зачем задавать глупые вопросы?


 
clickmaker ©   (2007-10-30 11:18) [25]


> [23] ЮЮ ©   (30.10.07 11:10)

ну да... это я поспешил )
но там не видно, чтобы он где-либо рисовался...


 
@!!ex ©   (2007-10-30 11:21) [26]

> [22] Anatoly Podgoretsky ©   (30.10.07 11:07)

Да вроде второй слэш просто игнорируется, так что не ошибочный ответ.


 
Галинка ©   (2007-10-30 12:09) [27]

А на canvas формы можно битмап непосредственно вывести? Как в дотнете?


 
Anatoly Podgoretsky ©   (2007-10-30 12:13) [28]

> @!!ex  (30.10.2007 11:21:26)  [26]

Уверен?


 
@!!ex ©   (2007-10-30 12:13) [29]

> [27] Галинка ©   (30.10.07 12:09)

BitBlt?


 
clickmaker ©   (2007-10-30 12:14) [30]


> А на canvas формы можно битмап непосредственно вывести?
>

Canvas.Draw()


 
homm ©   (2007-10-30 12:15) [31]

> [27] Галинка ©   (30.10.07 12:09)
> А на canvas формы можно битмап непосредственно вывести?
> Как в дотнете?

А может наоборот, в Дотнете, как в дельфи? :)


 
Галинка ©   (2007-10-30 12:23) [32]

Да мне без разницы направление. Шде как в где. Тогда просто не нужен дополнительный имадж на форме.


 
@!!ex ©   (2007-10-30 12:41) [33]

BitBlt(Form1.Canvas.Handle,0,0,BitMap.Width,BitMap.Height,BitMap.Canvas.Ha ndle,0,0,SRCCOPY);


 
homm ©   (2007-10-30 12:45) [34]

> [32] Галинка ©   (30.10.07 12:23)
> Тогда просто не нужен дополнительный имадж на форме.

Имейдж — просто очередной уровень абстракции, позволяющий сделать то, что тебе нужено проще и изщнее. Почему от него нужно избавляться — не понятно.


 
Галинка ©   (2007-10-30 12:55) [35]

homm ©   (30.10.07 12:45) [34]

не надо избавлятся. Я за свободу выбора )) Ведь можно и без него.


 
homm ©   (2007-10-30 13:03) [36]

> [35] Галинка ©   (30.10.07 12:55)
> Я за свободу выбора )) Ведь можно и без него.

Можно под апи писать на ассемблере…
Можно совсем без компьютера…


 
Галинка ©   (2007-10-30 13:07) [37]

homm ©   (30.10.07 13:03) [36]

зачем перегибать? Или лишь бы прицепиться?


 
homm ©   (2007-10-30 13:11) [38]

> [37] Галинка ©   (30.10.07 13:07)
> зачем перегибать? Или лишь бы прицепиться?

Да просто у многих есть эта нелюбовь к имейджу, многие делают странные действия, что-бы сэмулировать поведение, которое очень легко добиться при помощи его самого… Странный народ.


 
Галинка ©   (2007-10-30 13:15) [39]

homm ©   (30.10.07 13:11) [38]

я не избегаю имаджа. (У меня вообще нет ни любви, ни нелюбви к классам и компанентам. Мужа любить надо. На всех любви не напасешся )))) Но когда им пользуются, только "для того чтоб бУло", не очень хорошо. К тому же есть среды и библиотеки, где либо нет имаджа, либо его использование затруднительно. И челоаек должен знать альтернативы.


 
homm ©   (2007-10-30 13:22) [40]

> [39] Галинка ©   (30.10.07 13:15)
> Но когда им пользуются, только "для того чтоб бУло",

Для того чтобы было что? Картинка на форме? Дак он для того и сделан.



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

Текущий архив: 2007.11.25;
Скачать: CL | DM;

Наверх




Память: 0.56 MB
Время: 0.02 c
15-1192940736
SerJaNT
2007-10-21 08:25
2007.11.25
php-скрипт викторины


15-1193341207
@!!ex
2007-10-25 23:40
2007.11.25
Объясните?


2-1194165050
savyhinst
2007-11-04 11:30
2007.11.25
Классные константы


15-1192634270
Kostafey
2007-10-17 19:17
2007.11.25
Целесообразность оценки надежности программного обеспечения


2-1193738764
apic
2007-10-30 13:06
2007.11.25
delphi 2007