Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / Как разместить рисунок по центру / 10 сообщений из 10, страница 1 из 1
26.09.2007, 13:25
    #34827640
Scorpio_md
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как разместить рисунок по центру
Добры день.

Столкнулся с проблемой. На рабочую область desktop хочу разместить рисунок. Т.е. когда запускается проект появляется белый экран с меню вверху. Я на этот экран хочу повесить рисунок. В свойствах DESKTOP -> SCREEN -> Picture указал путь к рисунку. Но он почему то сместился влево. Как мне его разместить посредине. Вроде все свойства переменял, а он не двигается. Как его сдвинуть. Рисунок переделывать нельзя. Программа запускается на мониках от 800х600 до 1280х1024
...
Рейтинг: 0 / 0
26.09.2007, 16:04
    #34828392
Dima T
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как разместить рисунок по центру
Примерно так:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
		if type('_screen.imgPaper') = 'U'
			_screen.AddObject('imgPaper', 'image')
		endif
		* Размеры картинки
		lnWidth =  800 
		lnHeight =  541 
		with _screen.imgPaper
			.top = int((_screen.height - lnHeight) /  2 )
			.left = int((_screen.width - lnWidth) /  2 )
			.picture = fullpath('fon.jpg') && файл с картинкой
			.width = lnWidth
			.height = lnHeight
			.visible = .t.
		endwith
При желании можно растянуть на весь экран, только смотреться будет криво. Лучше сделать несколько разных размеров и показывать в зависимости от разрешения
...
Рейтинг: 0 / 0
26.09.2007, 16:40
    #34828579
MiklS
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как разместить рисунок по центру
Не удачное решение!
This.Image1.Stretch=1
cFile=FILETOSTR("C:\sss.bmp")
This.Image1.PictureVal=cFile
This.Image1.Move(0, 0, This.Width, This.Height)
Будет работать гораздо быстрее и изображение будет качественным!
...
Рейтинг: 0 / 0
26.09.2007, 18:21
    #34829169
Scorpio_md
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как разместить рисунок по центру
Dima TПримерно так:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
		if type('_screen.imgPaper') = 'U'
			_screen.AddObject('imgPaper', 'image')
		endif
		* Размеры картинки
		lnWidth =  800 
		lnHeight =  541 
		with _screen.imgPaper
			.top = int((_screen.height - lnHeight) /  2 )
			.left = int((_screen.width - lnWidth) /  2 )
			.picture = fullpath('fon.jpg') && файл с картинкой
			.width = lnWidth
			.height = lnHeight
			.visible = .t.
		endwith
При желании можно растянуть на весь экран, только смотреться будет криво. Лучше сделать несколько разных размеров и показывать в зависимости от разрешения

Спасибо. Подошло.
А что касается
Код: plaintext
1.
2.
3.
This.Image1.Stretch= 1 
cFile=FILETOSTR("C:\sss.bmp")
This.Image1.PictureVal=cFile
This.Image1.Move( 0 ,  0 , This.Width, This.Height)

Я ж рисунок не на форму накладываю.

Всеравно спасибо что отклинулись.
...
Рейтинг: 0 / 0
26.09.2007, 19:45
    #34829406
Dima T
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как разместить рисунок по центру
MiklSНе удачное решение!
This.Image1.Stretch=1
cFile=FILETOSTR("C:\sss.bmp")
This.Image1.PictureVal=cFile
This.Image1.Move(0, 0, This.Width, This.Height)
Будет работать гораздо быстрее и изображение будет качественным! Быстрее чего? Будет более качественным по сравнению с чем?
...
Рейтинг: 0 / 0
27.09.2007, 10:33
    #34830223
MiklS
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как разместить рисунок по центру
Для тех кто в танке
if type('_screen.imgPaper') = 'U'
_screen.AddObject('imgPaper', 'image')
endif
with _screen.imgPaper
.Stretch=1
cFile=FILETOSTR("C:\sss.bmp")
.PictureVal=cFile
.Move(0, 0, _screen.Width, _screen.Height)
endwith

На счет качества и бытроты
Попробуйте сами часто поменять картинки в Image тем и другим способом!
Попробуйте поместить изображение 1800*1800 в Image размером 600*600 или
рисунок 300*300 в Image 900*900. Сравните! Удачи!
...
Рейтинг: 0 / 0
27.09.2007, 16:14
    #34831889
Dima T
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как разместить рисунок по центру
MiklSДля тех кто в танке Рядом с тобой чтоли
MiklS...
.Stretch=1 Масштабирование приводит к ухудшению качества картинки. Если на картинке будет какой-то текст, то выглядит это будет очень криво. Для заставки лучше заготовить 2-3 картинки под стандартные разрешения, каким-нибудь серьезным графическим редактором типа корела или фотошопа. И показывать в зависимости от текущего разрешения.
MiklS...
На счет качества и бытроты
Попробуйте сами часто поменять картинки в Image тем и другим способом!
Попробуйте поместить изображение 1800*1800 в Image размером 600*600 или
рисунок 300*300 в Image 900*900. Сравните! Удачи!
Качество и быстрота - разные вещи.
Вопрос стоял конкретно - заменить белый фон окна фокса картинкой. А не слайд-шоу устроить. Эта операция произойдет только в момент запуска проги и сколько на нее время уйдет 0.1 мс или 0.1 с, не принципиально.
...
Рейтинг: 0 / 0
28.09.2007, 07:11
    #34833252
MiklS
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как разместить рисунок по центру
FOR DimaT
Зря зубоскалите, на счет танка я написАл на это
Scorpio_md
А что касается
Код: plaintext
1.
2.
3.
This.Image1.Stretch= 1 
cFile=FILETOSTR("C:\sss.bmp")
This.Image1.PictureVal=cFile
This.Image1.Move( 0 ,  0 , This.Width, This.Height)

Я ж рисунок не на форму накладываю.
...
Рейтинг: 0 / 0
28.09.2007, 07:24
    #34833255
MiklS
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как разместить рисунок по центру
P.S. А всё таки попробуйте мой пример. А вопрос стоял именно об использовании изображения на компах с разным разрешением экрана и не возможностью менять картинку!
...
Рейтинг: 0 / 0
28.09.2007, 10:55
    #34833711
GoshaS
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как разместить рисунок по центру
Мне честно говоря понравился этот способ
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
*картинка )
_screen.WindowState=  2  
_screen.BackColor=RGB( 206 , 221 , 223 ) 
IF  TYPE('_screen.imgPaper') = 'U'
	_screen.AddObject('imgPaper', 'image')
ENDIF
WITH _screen.imgPaper
	.Stretch= 1 
	cFile=FILETOSTR('"'+FULLPATH("MyPic.jpg")+'"')
	.PictureVal=cFile
	.Move( 0 ,  0 , _screen.Width, _screen.Height)
	.Visible= .T. 
ENDWITH 
Потом можно картинку менять или вообще в конфиг выкинуть и чтобы юзер сам выбирал картинку и цвет фона раб. стола программы ;)
...
Рейтинг: 0 / 0
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / Как разместить рисунок по центру / 10 сообщений из 10, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]