Форум: "Media";
Текущий архив: 2004.04.25;
Скачать: [xml.tar.bz2];
ВнизАвтоматическое изменение окна... Найти похожие ветки
← →
Builder (2004-01-24 07:37) [0]Здравствуйте уважаемые мастера,
- может ли Delphi автоматически определять размеры монитора и разрешения
и автоматически изменять размеры окна;
заранее спасибо...
P.S. если можно, то подробнее (в литературе смотрел)
← →
Matrex (2004-01-24 08:39) [1]Если я правильно понял то:
Function GetXScreen:Integer;
begin
result:=screen.width;
end;
Function GetYScreen:Integer;
begin
result:=screen.Height;
end;
Form.width:=GetXScreen;
Form.Height:=GetYScreen;
← →
Оптимал (2004-01-24 12:06) [2]Лучше добавить еще:
function GetXScreenEx: integer;
begin
Result := GetXScreen;
end;
function GetXScreenEx2: integer;
begin
Result := GetXScreenEx;
end;
То же самое и с Y-координатой. Использовать надо, естественно, GetXScreenEx2. Так намного оптимальнее...
← →
Оптимал (2004-01-24 12:13) [3]Да, вот еще: нужно в начале программы написать {$OPTIMIZATION OFF}... А то вот начнет компилятор куралесить! Дураки какие-то в Borland"е сидят! Оптимизируют что-то, а потом проблемы!
← →
Builder (2004-01-24 13:01) [4]Этот понятно, спасибо, но так мы получаем размеры рабочей области в пикселах? А может проще FullScreen как - нибудь сделать?
Или Delphi не может все настраивать автомат...?
И где убирается окантовка окна? Ну что-бы просто рабочее поле оставалось?
← →
DENNIS © (2004-01-24 13:12) [5]Чтобы просто раб. область остамась, есть свойство у формы: BoderStyle. Его значение: bsNone.
И не надо писать никаких функций. Проще сделать (хотя в зависимости от того что нужно):
Form.Width:=Screen.Width;
аналогично с Height,
← →
MacX (2004-01-24 13:25) [6]Я так понял человеку нужно не это... нужно изменить в инспекторе свойство Form := wsMaximized
← →
MacX (2004-01-24 13:25) [7]Извиняюсь Form.WindowState := wsMaximized
← →
Builder (2004-01-24 14:56) [8]А если на форме есть image1? Ведь у него размер фиксированный, можно ли его маштабировать?
← →
DENNIS © (2004-01-24 15:09) [9]у Image есть свойство Stretch. Делаешь ему true и изменяя его длину и ширину, он будет растягивать изображение. Еще есть св-во Prorortional. Ему true и размеры изменяются пропорционально.
← →
Builder (2004-01-24 15:33) [10]А если я начинаю изменять размер формы? image остается в прежнем виде...
← →
DENNIS © (2004-01-24 22:03) [11]Даже закрой, а потом вызови. Все останется. Кроме того можешь менять IMAGE не открывая его.
← →
MacX (2004-01-24 22:29) [12]Вот еще что может помочь: у многих объектов есть такой свойство (в инспекторе объектов) Anchors. По умолчанию в нем стоят лево и верх. Т.е. когда изменяются размеры формы, объекты передвигаются так, что расстояние слева и сверху не изменяется. Другими словами, объекты привязаны к левому верхнему углу формы. Поэкспериментируй - поймешь как это работает. Кроме того, если выставить, например, лево и право, то при увеличении формы объект тоже увеличится в ширину, т.к. расстояния и справа и слева не должны меняться. Так можно автоматически масштабировать объекты на форме.
Еще у некоторый объектов (TMemo например) есть свойство Align. Тоже позволяет автоматически масштабировать объекты.
← →
Mihey © (2004-01-24 23:42) [13]>Еще у некоторый объектов (TMemo например) есть свойство Align. Тоже позволяет автоматически масштабировать объекты.
У TImage тоже есть. Собственно говоря, у всех потомков TControl.
← →
Князев Сергей (2004-01-26 08:14) [14]
function TfrmMain.SetNewScreenMode(_width, _height: Integer):Boolean;
var DeviceMode : TDevMode;
begin
with DeviceMode do begin
dmSize:=SizeOf(DeviceMode);
dmBitsPerPel:=16;
dmPelsWidth:=_width;
dmPelsHeight:=_height;
dmFields:=DM_BITSPERPEL or DM_PELSWIDTH or DM_PELSHEIGHT;
result:=False;
if ChangeDisplaySettings(DeviceMode,CDS_TEST or CDS_UPDATEREGISTRY) <> DISP_CHANGE_SUCCESSFUL
then Exit;
Result:=ChangeDisplaySettings(DeviceMode,CDS_UPDATEREGISTRY) = DISP_CHANGE_SUCCESSFUL;
end;
end;
Задаещь при вызове ширину и высоту, и если результат True, то изменение экрана прошло успешно.
Страницы: 1 вся ветка
Форум: "Media";
Текущий архив: 2004.04.25;
Скачать: [xml.tar.bz2];
Память: 0.47 MB
Время: 0.034 c