Q&A
HOME
Tips & Tech
Q&A
Discuss
Download
자유게시판
홍보 / 광고
구인 / 구직
LOGIN
회원가입
모니터설정에 맞게 폼크기 조절하기
1024*768로 폼을만들어서 600*800으로도 화면크기에 맞게
폼을변환하고싶은데...
고수님들의 조언바랍니다. ^.^
2
COMMENTS
Mr.Q
•
2000.08.20 09:12
ljb007 wrote:
> 1024*768로 폼을만들어서 600*800으로도 화면크기에 맞게
> 폼을변환하고싶은데...
> 고수님들의 조언바랍니다. ^.^
아래소스를 참고하세요.
여러해상도에서 테스트해봤는데,
고해상도로 갈수록 정확한 화면 구현은 하지못하지만,
어느정도 쓸만합니다.
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
jpeg, ExtCtrls, StdCtrls, ComCtrls;
type
TForm1 = class(TForm)
Button1: TButton;
Edit1: TEdit;
ComboBox1: TComboBox;
Image1: TImage;
RichEdit1: TRichEdit;
procedure FormCreate(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
implementation
{$R *.DFM}
const
ScreenWidth:LongInt=800;
ScreenHeight:LongInt=600;
procedure TForm1.FormCreate(Sender: TObject);
begin
Scaled:=true;
if Screen.Width<>ScreenWidth then
begin
Width:=LongInt(Width)*LongInt(Screen.Width) div ScreenWidth;
Height:=LongInt(Height)*LongInt(Screen.Height) div ScreenHeight;
ScaleBy(Screen.Width, ScreenWidth);
end;
end;
end.
0
0
삭제
수정
댓글
영우
•
2000.08.20 06:25
ljb007 wrote:
> 1024*768로 폼을만들어서 600*800으로도 화면크기에 맞게
> 폼을변환하고싶은데...
> 고수님들의 조언바랍니다. ^.^
1024*768에서 만든 폼을 scale속성을 변경하여 보여주고자 하는 폼에맞게 (비율을계산해서....) 맞추면 될거같은데요..
전 전에 800*600에서 만든걸 타 해상도에서 똑같은 비율로 보여주려고 할 때 이 방법을 썼었거든요.. 수학에서 쓰는 비례식 같은거죠..
예를 들어 1024*768에서 가로가 x였다고 하고 800*600에서 보여질 가로크기가 y라고하면
1024:x=800:y이므로 y=800*x/1024가 되겠죠.. 이런 스케일변경은 버튼같은거도 적용이되니까.. 폼뿐만아니라 폼안에 있는 다른 컨트롤들도 같은 비율로 줄이거나 크게 할 수
있겠죠...
자세한 코딩방법은 다음에 올려드리죠...
혹시 inside secret delphi5라는 책이 있으면 찾아보세요..
그책에서 이런 내용을 본 것 같은데..
답변이 부실했군요--;; 다른 고수님들은 더 정확히 아실테니 조언을 받아보세요.
그럼이만..
0
0
삭제
수정
댓글
(NOTICE) You must be
logged in
to comment on this post.
이선경
2000.08.20 03:37
0
COMMENTS
/
0
LIKES
install시 database경로지정이 안됩니다...!!
산적
•
2000.08.20 02:35
1
COMMENTS
/
0
LIKES
이번에 저희 그룹에서. 프로그램을 하나 제작 하게 되었는데요
송종효
•
2000.08.20 09:13
8/19일 세미나자료를 참조하면 됩니다..
고재성
•
2000.08.20 00:51
2
COMMENTS
/
0
LIKES
성호종님 부탁드립니다. - Informix에 Null 사용하는 문제
성호종
•
2000.08.21 20:15
고재성 wrote: 델파이에서 insert할때 널을 insert하려면 아예 field를 빼버리는 방법이 있습니다. 예를...
고재성
•
2000.08.27 05:25
전번에 답변해주신데로 적용하였더니 원하는 결과가 나왔습니다. 그 직후에 감사의 답변을 올렸는데 어...
델초보
2000.08.22 05:52
0
COMMENTS
/
0
LIKES
콤보박스(ComboBox)의 3D 효과를 없애는 방법은?
ljb007
•
2000.08.20 00:21
2
COMMENTS
/
0
LIKES
모니터설정에 맞게 폼크기 조절하기
1024*768로 폼을만들어서 600*800으로도 화면크기에 맞게 폼을변환하고싶은데... 고수님들의 조언바랍니다. ^.^
Mr.Q
•
2000.08.20 09:12
ljb007 wrote: > 1024*768로 폼을만들어서 600*800으로도 화면크기에 맞게 > 폼을변환하고싶은데... > ...
영우
•
2000.08.20 06:25
ljb007 wrote: > 1024*768로 폼을만들어서 600*800으로도 화면크기에 맞게 > 폼을변환하고싶은데... > ...
heimdal
•
2000.08.23 18:30
1
COMMENTS
/
0
LIKES
gauge컴포넌트 사용법은? (진행상황 보여주기)
노을
•
2000.08.23 18:31
안녕하세요 노 을 입니다. 음 정확히 질문을 이해 못하겠내요 -.-.. 입력받고 20분동안의 진행상황 ...
김종훈
•
2000.08.19 23:49
1
COMMENTS
/
0
LIKES
CompositReport (컴포지트리포트) 사용법?
한현정
•
2000.08.22 19:53
저도 CompositReport를 이용하여 프로젝트의 보고서를 만들어 보았는데요. 여러가지 문제가 있었습니다. ...
장훈
•
2000.08.19 22:49
2
COMMENTS
/
0
LIKES
[TNoteBook] ..은 메모리에서 제거 되나요?
바사기몬
•
2000.08.20 00:22
장훈 wrote: > 일전에 TTabSheet Component 를 썼었는데.. 새로운 페이지를 선택하면 그전의 Page 에 > ...
장훈
•
2000.08.21 18:59
결국 TForm위에 구현 되었다면 TForm이 제거될때 같이 제거 됩니다.. 물론 님이 원하시는대로 메모리에서 ...
알고픈넘~
2000.08.22 07:03
0
COMMENTS
/
0
LIKES
Win NT에서의 [커널시간보기]의 의미
norang
2000.08.19 22:44
0
COMMENTS
/
0
LIKES
paradox 에서 memo field 에 text 추가 어떻게?
안젤726
2000.08.22 06:56
0
COMMENTS
/
0
LIKES
Linux에 Oracle 환경에서 DCOM을 이용한 MIDAS 사용이 가능한지?
안젤726
2000.08.22 06:58
0
COMMENTS
/
0
LIKES
[급질문]Socket Connection에서 CommandText를 사용할 수 없는지요?
사공엽
•
2000.08.22 06:59
1
COMMENTS
/
0
LIKES
EditBox에서 사용자가 선택한 문자열만 지우는 함수는?
바사기몬
•
2000.08.22 07:00
사공엽 wrote: > 에디트 박스에서 사용자가 선택한 문자열만 지우는 함수가 있나요? > 예를들면, 'abcd...
김영도
2000.08.19 21:56
0
COMMENTS
/
0
LIKES
재고계산 어케하요 ?
아큼
2000.08.19 21:53
0
COMMENTS
/
0
LIKES
dbgrid에서 원하는 자료를 검색하고 싶은데요!!!
heimdal
•
2000.08.19 21:27
1
COMMENTS
/
0
LIKES
동시에 두개의 폼 호출하기
yosul
•
2000.08.20 04:34
heimdal wrote: > 동시에 두개의폼을 호출하고싶은데여.. > > a.showmodal; > b.showmodal;...
조헌철
•
2000.08.22 07:03
1
COMMENTS
/
0
LIKES
이미지를 Drag하면 폼이 함께 움직이게 하려면?
최석기
•
2000.08.22 07:04
조헌철 wrote: > 이미지를 마우스로 누르고 움직이면 폼과같이 움직이게 하려면 어떻게 해야하죠? pro...
heosc
•
2000.08.22 07:06
1
COMMENTS
/
0
LIKES
세로로 된 스크롤 패널 만드는 법?
최용일
•
2000.08.22 07:07
안녕하세요. 최용일입니다. Additional탭에 있는 TScrollBox컴포넌트를 사용하세요. ^^ 항상 즐코하...
어린왕자
2000.08.19 19:27
0
COMMENTS
/
0
LIKES
띄워진 팝업메뉴를 자동으로 없애는 방법요~
사발우성
•
2000.08.22 07:12
3
COMMENTS
/
0
LIKES
날벼락~ 데이터베이스 로그인 창이 나오지 않게 하는 방법.. 날벼락~
정지호
•
2000.08.22 07:12
사발우성 wrote: > 하요 고수님들... > > 존 아침임당... > > 지가 어제 질문에 이어 질문함다... ...
이흥만
•
2000.08.22 07:13
TDataBase 컴포넌트의 LoginPrompt 프로퍼티를 FALSE로 하면 뜨지 않습니다. ~~ 참고로 TDataBase 컴포...
사발우성
•
2000.08.21 17:48
이흥만 wrote: > TDataBase 컴포넌트의 LoginPrompt 프로퍼티를 FALSE로 하면 뜨지 않습니다. ~~ > > ...
ljb007
2000/08/20 00:21
Views
486
Likes
0
Comments
2
Reports
0
Tag List
수정
삭제
목록으로
한델 로그인 하기
로그인 상태 유지
아직 회원이 아니세요? 가입하세요!
암호를 잊어버리셨나요?
> 1024*768로 폼을만들어서 600*800으로도 화면크기에 맞게
> 폼을변환하고싶은데...
> 고수님들의 조언바랍니다. ^.^
아래소스를 참고하세요.
여러해상도에서 테스트해봤는데,
고해상도로 갈수록 정확한 화면 구현은 하지못하지만,
어느정도 쓸만합니다.
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
jpeg, ExtCtrls, StdCtrls, ComCtrls;
type
TForm1 = class(TForm)
Button1: TButton;
Edit1: TEdit;
ComboBox1: TComboBox;
Image1: TImage;
RichEdit1: TRichEdit;
procedure FormCreate(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
implementation
{$R *.DFM}
const
ScreenWidth:LongInt=800;
ScreenHeight:LongInt=600;
procedure TForm1.FormCreate(Sender: TObject);
begin
Scaled:=true;
if Screen.Width<>ScreenWidth then
begin
Width:=LongInt(Width)*LongInt(Screen.Width) div ScreenWidth;
Height:=LongInt(Height)*LongInt(Screen.Height) div ScreenHeight;
ScaleBy(Screen.Width, ScreenWidth);
end;
end;
end.