반응형 IT/델파이45 델파이 TWebBrowser 컴포넌트에서 자바스크립트 직접 실행하는 방법 1. 개요 TWebBrowser를 이용하여 웹페이지 네비게이션 관련 프로그램을 작성할 경우에 한 번 로딩된 페이지에서 페이지에 포함된 자바 스크립트를 직접 실행 시켜야 하는 경우가 있는데 이때 쉽게 현재 로딩된 웹페이지에 자바스크립트를 실행시키는 방법이다. 2. 해결 방법 현재 로딩된 HTML문서 웹페이지는 윈도우(Window) 객체에서 해당 문서에 대한 액션 줄 수 있다 이때 사용할 수 있는 Window 객채의 자바스크립트 실행 메소드가 자바스크립트 호출을 활성화 시키는 "execScript" 함수이다. execScript는 자바스크립트 뿐만 아니라 웹브라우저가 실행 가능한 스크립트 언어면 어떤 것이든 실행이 가능한데 첫 번째 파라미터는 스크립트 문자열(예:foo(a, b))이며, 두 번째 파라미터가 .. 2023. 2. 15. 이미지 파일명을 가지고 이미지 사이즈(폭/높이) 알아내기 이미지 컴포넌트를 이용하지 않고 파일명만을 가지고 직접 이미지 파일의 사이즈를 얻어보자 JPEG, PNG,GIF 포멧에 대해 각각 구현 unit uImageSize; interface uses Classes; procedure GetJPGSize(const sFile: string; var wWidth, wHeight: Word); procedure GetPNGSize(const sFile: string; var wWidth, wHeight: Word); procedure GetGIFSize(const sGIFFile: string; var wWidth, wHeight: Word); implementation uses SysUtils; function ReadMWord(f: TFileStream): Wo.. 2023. 2. 14. JPEG/GIF/BMP/PNG/PCX등 이미지 관련 정보를 간단히 얻기 JPEG/GIF/BMP/PNG/PCX등의 이미지를 이미지 컴포넌트를 사용하지 않고 간단히 이미지 정보를 얻을 수 있음 다음과같은 정보를 얻을 수 있습니다 - 이미지 크기(width, heigjht) - 이미지 컬러수(Depth, 8, 24 ..) - 이미지 유형(BMP, JPEG, GIF...) - 파일크기 다음 유닛을 Uses 절에 추가후 사용 사용 예) ImageInfo := TDCImageInfo.Create; ImageInfo.ReadFile(AFileName); if ImageInfo.Depth=8 then begin ... end; ImageInfo.free; . Unit : DCImageInfo.pas {*************************************************.. 2023. 2. 14. TBitmap32는 Thread내에서 Memory Leak이 발생 해법 이 문제는 TBitmap32에 비트맵(TBitmap) 기반 Assign하는 동작이 스레드 내에서 안전하지 않기 때문으로 증상은 할당후 여타 작업을 수행 후에 TBitmap 객체를 해제 해도 메모리에서 제거되지 않는 문제임. 이 메모리 누수 현상은 유레카 로그에서도 메모리 릭으로 검출되지 않음. 해결책은 다음과 같습니다. GR32.pas 소스를 수정해야 함 procedure TCustomBitmap32.Assign(Source: TPersistent); 함수내에 서브 함수중 Bitmap을 이용한 Assign 부분을 수정 procedure AssignFromBitmap(TargetBitmap: TCustomBitmap32; SrcBmp: TBitmap); var TransparentColor: TColor3.. 2023. 2. 14. 이전 1 ··· 3 4 5 6 7 8 9 ··· 12 다음 반응형