Модераторы: Snowy, Alexeis, MetalFan

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Размеры и разрешения 
:(
    Опции темы
Pakshin A. S.
Дата 20.7.2003, 20:28 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Участник Клуба
Сообщений: 5056
Регистрация: 16.2.2003

Репутация: нет
Всего: 61



Вот исходник мини-программы, его можно немного переделать:
Код

unit Unit1;

interface

uses
 Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
 StdCtrls, Spin;

type
 PDmArray = ^TDmArray;
 TDmArray = array [0..0] of TDeviceMode;
 TForm1 = class(TForm)
   SpinEdit1: TSpinEdit;
   Button1: TButton;
   Memo1: TMemo;
   procedure FormCreate(Sender: TObject);
   procedure Button1Click(Sender: TObject);
   procedure FormDestroy(Sender: TObject);
 private
   lpDMArray: PDmArray;
   NumModes: integer;
 public
   { Public declarations }
 end;

var
 Form1: TForm1;

implementation

{$R *.DFM}

procedure TForm1.FormCreate(Sender: TObject);
var
i: integer;
MoreModes: boolean;
dm: TDeviceMode;
begin
Memo1.Lines.Cloar;
MoreModes:=true;
i:=0;
while MoreModes do
 begin
  MoreModes:=EnumDisplaySettings(nil, i, dm);
  Memo1.Lines.Add(' Mode ' + IntToStr(i) + ': ' + IntToStr(dm.dmBitsPerPel) + ' Bits Per Pixel ' + IntToStr(dm.dmPelsWidth) + ' x ' + IntToStr(dm.dmPelsHeight));
  inc(i);
 end;
NumModes:=i;
SpinEdit1.MaxValue:=NumModes;
GetMem(lpDmArray, SizeOf(TDeviceMode) * NumModes);
FillChar(lpDmArray^, SizeOf(TDeviceMode) * NumModes, #0);
{$IFOPT R+}
{$DEFINE CKRANGE}
{$R-}
{$EDNIF}
for i:=0 to (NumModes - 1) do
 EnumDisplaySettings(nil, i, lpDmArray[i]);
{$IFDEF CKRANGE}
{$UNDEF CKRANGE}
{$R+}
{$ENDIF}
end;

procedure TForm1.Button1Click(Sender: TObject);
var
ReturnVal: LongInt;
begin
{$IFOPT R+}
{$DEFINE CKRANGE}
{$R-}
{$ENDIF}
ReturnVal:=ChangeDisplaySettings(lpDmArray[SpinEdit1.Value], CDS_UPDATEREGISTRY);
{$IFDEF CKRANGE}
{$UNDEF CKRANGE}
{$R+}
{$ENDIF}
with Memo1.Lines do
 case ReturnVal of
  DISP_CHANGE_SECCESSFUL: {};
  DISP_CHANGE_RESTART:        {};
  DISP_CHANGE_BADFLAGS:      {};
  DISP_CHANGE_FAILED:           {};
  DISP_CHANGE_BADMODE:       {};
  DISP_CHANGE_NUTUPDATED:  {};
 end;
end;

procedure TForm1.FormDestroy(Sender: TObject);
begin
FreeMem(lpDmArray, SizeOf(TDeviceMode) * NumModes);
end;

end.

PM   Вверх
Pakshin A. S.
Дата 20.7.2003, 20:35 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Участник Клуба
Сообщений: 5056
Регистрация: 16.2.2003

Репутация: нет
Всего: 61



Зато весело было бы...
PM   Вверх
Pakshin A. S.
Дата 20.7.2003, 20:42 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Участник Клуба
Сообщений: 5056
Регистрация: 16.2.2003

Репутация: нет
Всего: 61



А если поставить форму без изменения размеров, т. е. что-то вроде BorderStyle=bsSingle или BorderStyle=bsToolWindow... должно работать.
PM   Вверх
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Delphi: Звук, графика и видео"
Girder
Snowy
Alexeis

Запрещено:

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делится вскрытыми компонентами

  • Литературу по Дельфи обсуждаем здесь
  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь
  • 90% ответов на свои вопросы можно найти в DRKB (Delphi Russian Knowledge Base) - крупнейшем в рунете сборнике материалов по Дельфи
  • По вопросам разработки игр стоит заглянуть сюда

FAQ раздела лежит здесь!


Если Вам помогли и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, Girder, Snowy.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Delphi: Звук, графика и видео | Следующая тема »


 




[ Время генерации скрипта: 0.0498 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.