link9230 link9231 link9232 link9233 link9234 link9235 link9236 link9237 link9238 link9239 link9240 link9241 link9242 link9243 link9244 link9245 link9246 link9247 link9248 link9249 link9250 link9251 link9252 link9253 link9254 link9255 link9256 link9257 link9258 link9259 link9260 link9261 link9262 link9263 link9264 link9265 link9266 link9267 link9268 link9269 link9270 link9271 link9272 link9273 link9274 link9275 link9276 link9277 link9278 link9279 link9280 link9281 link9282 link9283 link9284 link9285 link9286 link9287 link9288 link9289 link9290 link9291 link9292 link9293 link9294 link9295 link9296 link9297 link9298 link9299 link9300 link9301 link9302 link9303 link9304 link9305 link9306 link9307 link9308 link9309 link9310 link9311 link9312 link9313 link9314 link9315 link9316 link9317 link9318 link9319 link9320 link9321 link9322 link9323 link9324 link9325 link9326 link9327 link9328 link9329 link9330 link9331 link9332 link9333 link9334 link9335 link9336 link9337 link9338 link9339 link9340 link9341 link9342 link9343 link9344 link9345 link9346 link9347 link9348 link9349 link9350 link9351 link9352 link9353 link9354 link9355 link9356 link9357 link9358 link9359 link9360 link9361 link9362 link9363 link9364 link9365 link9366 link9367 link9368 link9369 link9370 link9371

Форум — Ответы     (  К темам )
 ?  Борт707: Собираю форму в Вын98, запускаю в NT — все сьезжает (25-03-2003 17:16:56)
Вроде все анчоры и алигменты выставил — все равно самая большая панель формы
оказывается меньше чем надо... Как с этим бороться?
 Павел (25-03-2003 19:37:53)
По-видимому на компьютерах с Win98 и Win NT разное разрешение экрана,
если в Win98 эта панель не съезжает, а в Win NT съезжает.
1 Изменить разрешение экрана — сделать как на Win98, или на компе,
или при запуске этой программы, чтобы это сделала она
или
2 Отслеживать в программе разрешение экрана и изменять размеры формы
и всех компонентов на ней под это разрешение.
 Борт707 (26-03-2003 12:52:50)
Да, верно, разрешение экрана разное...

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

Если нужно конкретно — проблема следующая:
В форме по вертикали как бы три части — сверху несколько кнопок и чек-боксов,
потом поле Мемо, под ним еще несколько кнопок и строка состояния. Надо, чтобы
поле Мемо занимало всю ширину формы. Сейчас я делаю так — просто подгоняю размер
Мемо под размер родительской формы и закрепляю его края анчорами, чтобы поле
правильно растягивалось вместе с формой. На моей машине все замечательно, при переходе
на другую соотношение размера формы и Мемо меняется случайным образом. Как надо сделать
правильно? (менять разрешение на клиентской машине, имхо — неприемлимо)
Дима
 Георгий (26-03-2003 20:11:39)
Я в подобных случаях делаю так
1. все элементы группирую и размещаю на Panel (в твоём случае это 3 панели — для верхних элементов, нижних и середины)
2. свойство align панелей устанивливаю в нужное значение (у тебя это alTop, alBottom, alClient соответственно)
вуаля — всё работает и само размеры изменяет
3. устанавливаю минимальные размеры формы, при которых на панели ещё хоть что то вмещается с помощью свойства constrains)
в результате получается прилично оформленная "картинка", которая никуда не сьезжает...
 Павел (26-03-2003 20:14:56)
Значит:
2 Отслеживать в программе разрешение экрана и изменять размеры формы
и всех компонентов на ней под это разрешение.