![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
SVISTAPLYASKA - разработка приложения для Vista в Delphi 7 [D6, D7, Win95/98, WinXP]
TIF © (2007-11-12 12:33:00)В Vista открыл свой проект и ахнул: у меня на форме было много картинок, располагающихся рядом. Так вот, они были пригнаны плотно друг к другу, например размер их был 100х50. В Vista сами Image расширились, стали где-то 120х70, естественно картинка болтается по центру этой области и не касается соседних.
И так случилось со всеми Image-ами. В XP всё нормально.
Изменения коснулись и других компонентов - использую красивые графические компоненты, так у них тоже поехали ширина, высота...
Самый прикол в том, что когда всё подогнал, скомпилил в Vitsa и открыл потом exe-шник в XP, то ... всё сузилось!
Неужели придётся как-то программировать задание размеров компонентов в зависимости от типа операционки? Абсурд! Либо создавать два идентичных приложения, различающихся только размерами компонентов, что не лучше.
Ничего не понимаю! Может в Vista какие-то коэффициенты пересчёта размеров? Или как-то влияет разрешение, масштабирование экрана? Кто сталкивался с чем-либо подобным или знает, в чём тут может быть дело? Плз, помогите.
PS: просьба советов типа: "Зачем тебе виста, пиши в ХР и работай в ХР" - не давать.
Sorry за возможные ошибки в тексте
TIF (2007-12-05 17:00:00) [1]
> То есть, D7 на висту в принципе нельзя установить ? :)
как нельзя? а каким макаром у меня поставилось? :-))))
> , а я пожалуй воспоьзуюсь RAD 2007.
Блин, нашлась бы добрая душа, выслала бы диск с РАДой - тоже бы в ней сидел!
Kolan (2007-12-05 11:50:00) [2]Уговорили, делайте программы для висты на D7, а я пожалуй воспоьзуюсь RAD 2007.
Игорь Шевченко (2007-12-05 11:24:00) [3]Kolan © (05.12.07 11:19) [38]
Флудить завязываем. То, что не управишься - это гарантировано, почитай Таненбаума, он доходчиво объясняет, почему не управишься ни за сто ни за тысячу
Kolan (2007-12-05 11:19:00) [4]> Можешь сразу заплатить неустойку
За что это? За сто с небольшимуправлюсь, при соотв финансировании.
Игорь Шевченко (2007-12-05 10:57:00) [5]Kolan © (05.12.07 10:30) [36]
> Предлогаю заключить контракт.
Можешь сразу заплатить неустойку
> Мое мнение основана на том, что я прочитал про RAD 2007
Практика - критерий истины. Ты в таках случаях, когда делаешь заявления о возможности/невозможности чего-то добавляй, что "я прочитал, но сам не знаю".
Kolan (2007-12-05 10:30:00) [6]> Во-первых, не напишешь.
Предлогаю заключить контракт. + К браузеру берусь обучить говорить осла :).
Гугль рулез фарева.
Честно скажите, пытались писать? Я нет. Мое мнение основана на том, что я прочитал про RAD 2007
Игорь Шевченко (2007-12-05 10:11:00) [7]Kolan © (04.12.07 19:18) [34]
Во-первых, не напишешь.
Во-вторых:
"1. Открываем каталог "....Borland\Delphi7\"
2. Нажимаем правой клав. мыши на каталоге Bin и выбираем "Свойства"
3. Открываем вкладку "Безопасность"
4. Нажимаем "изменить"
5. Выбираем нужного пользователя и напротив "Изменения" ставим галочку в колонке разрешить
Можно так же проделать для Borland\Delphi7\Projects."
из гугля.
Гугль - рулез фарева.
Kolan (2007-12-04 19:18:00) [8]> То есть, D7 на висту в принципе нельзя установить ? :)
В принципе можно сделать все. За сто с небольшим лет я вам и ни ассемблере браузер на висту напишу в блокноте.
Игорь Шевченко (2007-12-04 17:53:00) [9]Kolan © (04.12.07 17:36) [31]
> См. CodeGear RAD 2007 список изменений, странно что вы
> Игорь придрались… Не зря же борланд выпустил студию где
> в основном сделана поддержка висты
Кушать хочется. Это как раз не аргумент.
> Для начала, да. Как минимум будет ругаться виста.
То есть, D7 на висту в принципе нельзя установить ? :)
Dennis I. Komarov (2007-12-04 17:41:00) [10]Хочу Turbo D 2007!!!
Kolan (2007-12-04 17:36:00) [11]> установка Delphi 7 на Vista,
Для начала, да. Как минимум будет ругаться виста.
> неработоспособность приложений
Так как в формах нет новых свойств, которые могут иметь окна в висет, то соотв
ЗЫ
См. CodeGear RAD 2007 список изменений, странно что вы Игорь придрались Не зря же борланд выпустил студию где в основном сделана поддержка висты
TIF (2007-12-04 15:42:00) [12]возможно. но, например, не поддерживаются новые диалоги висты.
Игорь Шевченко (2007-12-04 15:38:00) [13]Kolan © (04.12.07 15:17) [28]
Нет, я не понял, давай подробности. Какой именно эатп невозможен - установка Delphi 7 на Vista, неработоспособность приложений, созданных на delphi 7 под Vista или что-то еще ?
Kolan (2007-12-04 15:17:00) [14]> Точно ?
Нет, ну нормальная, быстрая. Если конечно самому адаптировать VCl итд ну вы же поняли меня
Игорь Шевченко (2007-12-04 15:12:00) [15]
> Невозможна.
Точно ?
Kolan (2007-12-04 15:10:00) [16]разработка приложения для Vista в Delphi 7
Невозможна. Возмите RAD Studio 2007
TIF (2007-12-04 15:04:00) [17]спасибо! то что надо, конечно, лучше бы модернизированный вариант, но пока хватит :-)
Dracula (2007-12-04 12:15:00) [18]Вот эта функция точно работает, а про DPI забывать нельзя (очень многие люди пользуются нестандартным), тем более когда на форме куча картинок
function GetScreenDPI: Integer;
var
hdcScreen: HDC;
iDPI: Integer;
begin
hdcScreen := GetDC(0);
iDPI := -1; // assume failure
if (hdcScreen > 0) then
begin
iDPI := GetDeviceCaps(hdcScreen, LOGPIXELSX);
ReleaseDC(0, hdcScreen);
end;
Result := iDPI;
end;
Далее в обработчике FormCanResize
procedure TMainForm.FormCanResize(Sender: TObject; var NewWidth,
NewHeight: Integer; var Resize: Boolean);
var
Mul: Real;
begin
Mul := GetScreenDPI / 96;
if NewHeight <= (480 * Mul) then NewHeight := Round(480 * Mul);
if NewWidth <= (710 * Mul) then NewWidth := Round(660 * Mul);
Resize := True;
end;
работает как в висте, так и в хп.
а вот с бордюром окон, такая проблема тоже есть, но решение пока не нашол, да я в принципе и не искал :).
TIF (2007-12-04 09:28:00) [19]Ё-МОЁ! ( sorry, sorry, sorry :-) )
Оказывается дело в разрешении экрана! В висте ведь есть средство масштабирования экрана! Вот оно и было включено (разрешение 120 dpi, вместо 96 обычных)!
И как никто не мог догадаться?
Вот теперь встал вопрос корректного отображения на экранах с различным dpi. Испробовал все способы, которые смог найти - не работает.
Кто чем может помочь?
TIF (2007-11-29 15:39:00) [20]
> тут предлагают 205 делыу. А у неё тоже ведь глюки пойдут?
> а?
блин, что-то по китайски напечатал:
тут предлагают 2005 делфу. А у неё тоже ведь глюки будут?