Форум программистов, компьютерный форум, киберфорум
C++ Builder
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
 
Рейтинг 4.61/18: Рейтинг темы: голосов - 18, средняя оценка - 4.61
6 / 6 / 6
Регистрация: 28.05.2013
Сообщений: 115

Просмотр фото на разных компьютерах

02.12.2013, 09:25. Показов 3881. Ответов 41
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Здравствуйте форумчани. На форме расположил фото с расширением bmp. Два фото. На своем компе все нормально смотрится. На другом компе происходит изменения размеров фотографий. Как сделать чтобы размер фото и их месторасположения не изменялись при просмотре на другом компе? Заранее спасибо.
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
02.12.2013, 09:25
Ответы с готовыми решениями:

Ошибка БД на разных компьютерах
Добрый день, уважаемые! Помогите, пожалуйста, решить вопрос. У меня создана большая БД с записями. На форме созданы кнопки перехода по...

AlphaControls на разных компьютерах
Всем привет! Установил компонент AlphaControls. У себя на компьютере запускаю программу все норм скин прикольный, но на другом...

Загрузка ОС с флешки на разных компьютерах
Всем добрый день ... Разрабатываем программное обеспечение (ПО). Разрабатываемое ПО использует приличный набор сторонних библиотек,...

41
 Аватар для demon_7
260 / 192 / 60
Регистрация: 12.05.2013
Сообщений: 857
02.12.2013, 09:28
Вы уверенны, что размер фото меняется? как вы это поняли?
я не понимаю что мешает сделать memo поле и в него вывести Image->Height и Image->Width. Допустим запустить на своем компе, записать данные на листок, сфоткать, потом запустить на другом компьютере и сравнить....Тоже самое проделать с формой...Хотя размеры формы лучше делать фиксированные и без возможности изменения, если вы в своем проекте не паритесь по поводу маштабирование объектов и положения объектов.
0
Почетный модератор
Эксперт С++
 Аватар для SatanaXIII
5851 / 2862 / 392
Регистрация: 01.11.2011
Сообщений: 6,906
02.12.2013, 10:10
PEAPLE, а может быть это вызвано разными ос на этих компьютерах? Вот здесь посмотрите: Различие рамеров элементов в формах приложений у Windows XP и 7 Похоже?
1
6 / 6 / 6
Регистрация: 28.05.2013
Сообщений: 115
02.12.2013, 13:51  [ТС]
Да нет операционнки одинаковы.
0
Почетный модератор
Эксперт С++
 Аватар для SatanaXIII
5851 / 2862 / 392
Регистрация: 01.11.2011
Сообщений: 6,906
02.12.2013, 14:00
PEAPLE, можете выложить скриншоты до и после?
0
6 / 6 / 6
Регистрация: 28.05.2013
Сообщений: 115
02.12.2013, 21:50  [ТС]
SatanaXIII я программно поставил размеры. Вроде стало нормально. Показывать.

C++
1
2
3
4
5
6
7
void __fastcall TForm1::Image3Click(TObject *Sender)
{
Image3->Height=219;
Image3->Left=641;
 Image3->Top=-48;
 Image3->Width=838;
}
Добавлено через 1 минуту
Дальше по работаю сообщу результат. Спасибо за поддержку.

Добавлено через 7 часов 18 минут
Уважаемый SatanaXIII и господа форумчани задачу решил. Необходимо Image1->Transporent=true; и рисунок не двигается на форме. Застывает. Главное в
C++
1
void __fastcall TForm1::Image1Click(TObject *Sender)
не надо указывать параметры ширину, высоту и т.д. Спасибо Всем.
0
 Аватар для demon_7
260 / 192 / 60
Регистрация: 12.05.2013
Сообщений: 857
03.12.2013, 07:59
Цитата Сообщение от PEAPLE Посмотреть сообщение
Уважаемый SatanaXIII и господа форумчани задачу решил. Необходимо Image1->Transporent=true; и рисунок не двигается на форме. Застывает. Главное в
Код C++
1
void __fastcall TForm1::Image1Click(TObject *Sender)
не надо указывать параметры ширину, высоту и т.д. Спасибо Всем.
а может кому то хочется по клику менять атрибуты)))
Отлично что вы разобрались!
0
6 / 6 / 6
Регистрация: 28.05.2013
Сообщений: 115
03.12.2013, 17:30  [ТС]
Спасибо SatanaXIII за представленный материал.

Добавлено через 7 минут
Здравствуйте SatanaXIII. Попробывал Ваш совет прикольно. Вопрос в том например у меня на форме 6 объектов т.е. разных компонентов. Я правильно сделал введя данные по 6 компонентам в фрагменте кода:

C++
1
2
int cc=ControlCount-6; //количество объектов на форме
while(cc!=-1) //для каждого объекта выполняем следующие операции
Заранее спасибо.
0
Почетный модератор
Эксперт С++
 Аватар для SatanaXIII
5851 / 2862 / 392
Регистрация: 01.11.2011
Сообщений: 6,906
03.12.2013, 18:57
PEAPLE, здравствуйте.
Не могли бы чуточку более развернуто сказать, что вы хотите сделать? В итоге то.

Цитата Сообщение от PEAPLE Посмотреть сообщение
по 6 компонентам
C++
1
int cc=ControlCount-6; //количество объектов на форме
Нет. ControlCount это уже и есть количество объектов на форме. То есть в вашем случае, при расположении шести компонентов на форме, ControlCount и будет равен шести. Но поскольку нумерация компонентов начинается с нуля, то индекс последнего компонента будет ControlCount-1. Следовательно ваш код будет выглядеть вот так:
C++
1
2
3
4
5
/*int cc=ControlCount-6;
int cc=6-6;*/
int cc=0;
/*while(0!=-1)*/
while(true)
То есть бесконечный цикл. Ваше приложение помрет при создании.

Впринципе там и надо только в OnCreate подставить ваше разрешение экрана:
C++
1
2
factor.x=1024/res.x;
factor.y=768/res.y;
0
6 / 6 / 6
Регистрация: 28.05.2013
Сообщений: 115
03.12.2013, 22:18  [ТС]
Здравствуйте SatanaXIII. Я вообще и хотел чтобы у меня все компоненты на форме да и сама форма при просмотре на другом компе выглядели по человечески. Бьюсь давно. С формой вроде проблему решил открывалась и выглядела изящно на любом компе, но с компонентами была проблема. Все решил. Попробовал на 3 компах со своим разрешением все работает. Я Вас понял знаете я попробовал данный вариант:

C++
1
2
int cc=ControlCount-18; //количество объектов на форме
while(cc!=-1) //для каждого объекта выполняем следующие операции
получается. Извините конечно я понял логику кода. И попробовал по Вашему варианту, естественно все хорошо получилось. Проэксперементировал и поставил данный код во вторую форму соответсвенно формы связаны через

C++
1
 Form->Show();
Поплыли рисунки. Понятно достаточно поставить данный код на первую головную форму данный код, то и связанные формы с ней приобретают данный признак, признак головной формы. Я так думаю.
0
Почетный модератор
Эксперт С++
 Аватар для SatanaXIII
5851 / 2862 / 392
Регистрация: 01.11.2011
Сообщений: 6,906
04.12.2013, 08:45
Опять не верно. Не трогайте запись
C++
1
int cc=ControlCount-1;
Там в конце должен быть именно минус один. Не надо туда подставлять никакие другие цифры.

Цитата Сообщение от PEAPLE Посмотреть сообщение
поставил данный код во вторую форму
Куда конкретно? Он должен быть в OnCreate().

Цитата Сообщение от PEAPLE Посмотреть сообщение
связанные формы с ней приобретают данный признак
Не должны. Что-то не так.
0
6 / 6 / 6
Регистрация: 28.05.2013
Сообщений: 115
04.12.2013, 11:51  [ТС]
Здравствуйте SatanaXIII. Сделал как сказали у меня 6 компонентов на форме. Во второй форме код находится именно в OnCreate().

C++
1
2
int cc=ControlCount-1; //количество объектов на форме
while(cc!=-1)
Интересно получается. На двух компах на которых я попробовал данный способ установлено разрешение 1280 на 1024. Установил это разрешение в коде. На одном компе нормально все компоненты на форме выглядят замечательно и Image стоят ровно, но попробовал эту же программу на другом компе с тем же разрешением картинки поплыли, компоненты сместились. Почему так происходит? Не подскажите. Заранее спасибо.
0
Почетный модератор
Эксперт С++
 Аватар для SatanaXIII
5851 / 2862 / 392
Регистрация: 01.11.2011
Сообщений: 6,906
04.12.2013, 12:03
Цитата Сообщение от PEAPLE Посмотреть сообщение
На двух компах на которых я попробовал данный способ установлено разрешение 1280 на 1024
Это по теории не должно никого волновать.

Цитата Сообщение от PEAPLE Посмотреть сообщение
Установил это разрешение в коде
В коде должно быть установлено разрешение того монитора, на котором происходит компиляция программы; где вы формируете интерфейс.
0
6 / 6 / 6
Регистрация: 28.05.2013
Сообщений: 115
04.12.2013, 12:54  [ТС]
Извините SatanaXIII по поводу формирования интерфейса если не прав извините. На двух компах установлена ос Windows XP разрешение одинаковое на обоих. Программу делаю на одном из этих компах. на второй перехожу где разрешение одинаково и сразу все убегает. Сейчас вышел на третий комп. использую метод перебора, разрешение идентично на третьем все хорошо получается все на форме прекрасно выглядит. Хотя на экране того компа где все плохо получается сразу видно что значки папок, курсор мышки и т.д.немного отличаются размерами хотя разрешение одинаково.Что может быть?
0
Почетный модератор
Эксперт С++
 Аватар для SatanaXIII
5851 / 2862 / 392
Регистрация: 01.11.2011
Сообщений: 6,906
04.12.2013, 13:04
PEAPLE, можете привести полный код события OnCreate() формы и три скриншота различий отображения?

Добавлено через очень много секунд
Цитата Сообщение от PEAPLE Посмотреть сообщение
Что может быть?
Ну явно какие-то настройки винды. Шрифты, крупные значки, хз.
0
6 / 6 / 6
Регистрация: 28.05.2013
Сообщений: 115
04.12.2013, 13:36  [ТС]
Извените скриншоты не знаю как отправлять, сказал честно. На форме 18 компонентов.

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
void __fastcall TForm1::FormCreate(TObject *Sender)
{
 
struct res{float x,y;}res;
 
 
struct factor{float x,y;}factor;
 
 
res.x=Screen->Width;
res.y=Screen->Height;
 
 
 
factor.x=1280/res.x;
factor.y=1024/res.y;
 
int cc=ControlCount-1;
while(cc!=-1) 
{
Controls[cc]->Left/=factor.x; 
Controls[cc]->Top/=factor.y; 
Controls[cc]->Width/=factor.x;
Controls[cc]->Height/=factor.y; 
cc--;
}
 
 
Form1->Width/=factor.x;
Form1->Height/=factor.y;
 
 
Form1->PixelsPerInch=Screen->PixelsPerInch;
0
Почетный модератор
Эксперт С++
 Аватар для SatanaXIII
5851 / 2862 / 392
Регистрация: 01.11.2011
Сообщений: 6,906
04.12.2013, 13:49
Цитата Сообщение от PEAPLE Посмотреть сообщение
скриншоты не знаю как отправлять
Под окном отправки сообщений есть кнопка расширенный режим. По ее нажатию откроется другое окно для ввода сообщения - в нем, так же внизу, есть кнопка управление вложениями. По ее нажатию откроется окно для загрузки файлов.
0
6 / 6 / 6
Регистрация: 28.05.2013
Сообщений: 115
04.12.2013, 15:10  [ТС]
SatanaXIII я Вам отправли файлы название:1.Ненормальный комп. 2.Нормальный комп.

Добавлено через 24 минуты
Вы получили фото?
0
Почетный модератор
Эксперт С++
 Аватар для SatanaXIII
5851 / 2862 / 392
Регистрация: 01.11.2011
Сообщений: 6,906
04.12.2013, 20:48
PEAPLE, нет. Не получил. Куда вы мне отправили?

Добавлено через 14 секунд
И главное нахрена?
0
6 / 6 / 6
Регистрация: 28.05.2013
Сообщений: 115
04.12.2013, 20:52  [ТС]
Вы сами попросили отправить скриншоты.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
04.12.2013, 20:52
Помогаю со студенческими работами здесь

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

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

Сервис не работает на разных компьютерах
есть дуплексный клиент-сервер. типа чатик. проблема в том, что на localhost всё прекрасно работает, как только я заменяю localhost на...

Одновременная установка ПО на разных компьютерах
Такой вопрос есть 20 компьютеров с Windows 7, объединенных в сеть. Необходимо на все установить одну программу. Возможно ли сделать это...

Создание решения на разных компьютерах
Я создаю учебный проект, и переодически перехожу с одной машины на другую, копируя проект на флешку. Сегодня скопировал и перенёс....


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
20
Ответ Создать тему
Новые блоги и статьи
Символические и жёсткие ссылки в Linux.
algri14 15.03.2026
Существует два типа ссылок — символические и жёсткие. Ссылка в Linux — это дополнительная запись в каталоге, которая может указывать либо на inode «файла-ИСТОЧНИКА», тогда это будет «жёсткая. . .
[Owen Logic] Поддержание уровня воды в резервуаре количеством включённых насосов: моделирование и выбор регулятора
ФедосеевПавел 14.03.2026
Поддержание уровня воды в резервуаре количеством включённых насосов: моделирование и выбор регулятора ВВЕДЕНИЕ Выполняя задание на управление насосной группой заполнения резервуара,. . .
делаю науч статью по влиянию грибов на сукцессию
anaschu 13.03.2026
прикрепляю статью
SDL3 для Desktop (MinGW): Создаём пустое окно с нуля для 2D-графики на SDL3, Си и C++
8Observer8 10.03.2026
Содержание блога Финальные проекты на Си и на C++: hello-sdl3-c. zip hello-sdl3-cpp. zip Результат:
Установка CMake и MinGW 13.1 для сборки С и C++ приложений из консоли и из Qt Creator в EXE
8Observer8 10.03.2026
Содержание блога MinGW - это коллекция инструментов для сборки приложений в EXE. CMake - это система сборки приложений. Здесь описаны базовые шаги для старта программирования с помощью CMake и. . .
Как дизайн сайта влияет на конверсию: 7 решений, которые реально повышают заявки
Neotwalker 08.03.2026
Многие до сих пор воспринимают дизайн сайта как “красивую оболочку”. На практике всё иначе: дизайн напрямую влияет на то, оставит человек заявку или уйдёт через несколько секунд. Даже если у вас. . .
Модульная разработка через nuget packages
DevAlt 07.03.2026
Сложившийся в . Net-среде способ разработки чаще всего предполагает монорепозиторий в котором находятся все исходники. При создании нового решения, мы просто добавляем нужные проекты и имеем. . .
Модульный подход на примере F#
DevAlt 06.03.2026
В блоге дяди Боба наткнулся на такое определение: В этой книге («Подход, основанный на вариантах использования») Ивар утверждает, что архитектура программного обеспечения — это структуры,. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru