- waltura := screen.height;
Alteravideo(800,600);
FormClose - AlteraVideo(wlargura, waltura);
////////////////////////////////////////////////////////////////////////////
///
function ResolucaoVideo(largura: Integer; altura: Integer): boolean;
var
ModoVideo : TDeviceMode;
begin
EnumDisplaySettings( nil, 0, ModoVideo );
ModoVideo.dmFields := DM_PELSWIDTH or DM_PELSHEIGHT;
ModoVideo.dmPelsWidth := largura;
ModoVideo.dmPelsHeight := altura;
Result := ChangeDisplaySettings(ModoVideo,
CDS_UPDATEREGISTRY) =
DISP_CHANGE_SUCCESSFUL;
end;
-----Mensagem original-----
De: delphi-br@yahoogrupos.com.br [mailto:[EMAIL PROTECTED]
nome de Allan
Enviada em: quinta-feira, 11 de maio de 2006 20:49
Para: delphi-br@yahoogrupos.com.br
Assunto: [delphi-br] RESOLUÇÃO DE VÍDEO [Vamos acertar isso]
OBS: Senhores moderadores, peço a licença para enviar para a lista-delphi
também.Pois muitos daquela lista tbém precisam dessa ajuda.
Pessoal, estive conversando com o José Otávio(Associado) sobre o problema da
resolução de vídeo para o aplicativo, então cheguei a uma conclusão, que uma
saída(não totalmente viável) seria a seguinte:
Ao Carregar a aplicação ele checa qual a resolução de vídeo e grava em um
arquivo, ou até mesmo numa variável e altera para a resolução ideal para o
programa trabalhar.
Ao fechar a aplicação ele retorna a resolução como estava antes de carregar
o programa.
Gostaria da opinião dos demais e uma ajuda, pois já comecei, ou melhor já
achei umas dicas a respeito, segue o q tenho em delphi6:
File/New/Application;
Coloque um BitBtn e um listbox;
segue os códigos:
On Create:
procedure TForm1.FormCreate(Sender: TObject);
var
i : Integer;
DevMode : TDevMode;
begin
If (Screen.Width <> 800) and (Screen.Height <> 600) then begin
If Application.MessageBox('Roda melhor em 800 x 600, melhor alterar a
resolução, deseja alterar agora?.','Resolução',52)= 6 then begin
WinExec('RunDLL32.exe Shell32.DLL,Control_RunDLL Desk.cpl', SW_Show);
Halt;
end; //MessageBox
end; // tamanho atual
Caption := 'Resolução atual: '+IntToStr(Screen.Width)+' X
'+IntToStr(Screen.Height);
i := 0;
while EnumDisplaySettings(nil,i,Devmode) do begin
with Devmode do
ListBox1.Items.Add(Format('%dx%d %d Colors', [dmPelsWidth,dmPelsHeight, 1
shl dmBitsperPel]));
Inc(i);
end;
end;
On click do botão:
procedure TForm1.BitBtn1Click(Sender: TObject);
var
DevMode : TDevMode;
begin
EnumDisplaySettings(nil,Listbox1.ItemIndex,Devmode);
ChangeDisplaySettings(DevMode,1);
end;
Até aqui tdo bem, o que preciso agora da ajuda de vcs é como localizar ou
como jogar que a nova resolução será 1024 x 768, sendo que aqui é feito
através do valor que está no listbox.
Por favor quem souber ajude e repasse a toda lista, será útil pra muita
gente que assim como o José, eu Allan, etc...etc.. passa por esse pb.
[]s
Allan
[As partes desta mensagem que não continham texto foram removidas]
--
<<<<< FAVOR REMOVER ESTA PARTE AO RESPONDER ESTA MENSAGEM >>>>>
Links do Yahoo! Grupos
__________ Informação do NOD32 1.1454 (20060321) __________
Esta mensagem foi verificada pelo NOD32 Sistema Antivírus
http://www.nod32.com.br
--
<<<<< FAVOR REMOVER ESTA PARTE AO RESPONDER ESTA MENSAGEM >>>>>
<*> Para ver as mensagens antigas, acesse:
http://br.groups.yahoo.com/group/delphi-br/messages
<*> Para falar com o moderador, envie um e-mail para:
[EMAIL PROTECTED]
Yahoo! Grupos, um serviço oferecido por: | |
|
Links do Yahoo! Grupos
- Para visitar o site do seu grupo na web, acesse:
http://br.groups.yahoo.com/group/delphi-br/
- Para sair deste grupo, envie um e-mail para:
[EMAIL PROTECTED]
- O uso que você faz do Yahoo! Grupos está sujeito aos Termos do Serviço do Yahoo!.