전체 글 156

FireMonkey Delphi component 설치하기

1. Component 패키지 파일(*.bpl) 과 소스파일들을 원하는 폴더에 복사한다    - 패키지 파일을 원하는 위치에 복사한다 (예: D:\Workspace) 2. Component 설치2-1) 메뉴에서 'Install Packages...' 선택2-2) 'Add'를 선택하여, 복사한 패키지 파일을 선택한 후 'OK'를 선택한다.2-3) Tools > Options... 메뉴을 선택한 후 Language > Delphi > Library 를 선택 한 후 'Library Path' 에 있는 버튼을 선택한다.2-4) 소스가 있는 폴더를 선택한 후 'Add' 버튼을 이용해 소스폴더를 추가 한 후 'OK'버튼을 선택한다. 3. RAD Studio 를 재 실행 시킨다.

Firemonkey의 Android/iOS 환경에서 네이버 OAuth2.0 을 이용한 로그인

Firemonkey (Delphi) 의 Android/iOS 에서 Naver OAuth2.0 을 이용하여 사용자 정보를 가져오는 순서이다.'② code 전달' 에 사용되는  redirect_uri 는 네이버에서 code를 전달할 때 사용되는 주소이며, 보통 'http://www.sample.com/oauth' 혹은 'https://www.sample.com/oauth' 등으로 표시된다. 웹서버를 만들어서 해당 폴더를 생성 한 후 index.html 등을 만들어 넣으면 된다.지금은, TWebBrowser 에서 DidFinishLoad( ) 함수를 이용하여, 직접 code 값을 추출할 것이므로, index.html 안에서는 특별한 작업을 할 필요가 없다. (redirect_uri 이 서버단에서 code를 받..

FMX 2024.05.31

firemonkey Android/iOS 환경에서 TWebBrowser 로 Youtube 동영상 보여주기

Firemonkey (Delphi)에서 Android/iOS 앱에서  TWebBrowser 로 Youtube 동영상을 보여주는 방법은 두 가지 가 있다. 1. iFrame 을 사용하는 방법 ( https://rebornbb.tistory.com/entry/HTML-iframe-%EC%9C%A0%ED%8A%9C%EB%B8%8C-%EB%8F%99%EC%98%81%EC%83%81-%EC%9E%90%EB%8F%99-%EC%97%B0%EC%86%8D%EC%9E%AC%EC%83%9D )> scr 부분에, 유투브 url 을 입력한다. 이때 파라미터로 몇가지 세팅을 할 수 있다.     >> autoplay=1 : 동영상 자동실행     >> mute=1 : 소리 끔     >> controls=0 : 동영상 아래 p..

FMX/TWebBrowser 2024.05.31

Delphi Thread 정리

Delphi 에서 사용되는 Thread 를 정리한다. 본 문서에서 사용하는 코드는 Delphi Alexandria 버전의 FMX 환경에서 제작되었다. Delphi Thread 의 구성은 아래와 같다. TThread Synchronize Queue CreateAnonymousThread TTask TParell TMonitor Thread 는 멀티스레딩을 구현하는 기능이며, 여러작업을 동시에 처리하거나 비동기 처리를 할 수 있게 해 준다. > 백그라운드 작업 (TTask, TThread.CreateAnonymousThread) > 병렬처리 (TTask, TParallel.For) > 동기화 (TThread.Synchronize, TThread.Queue) Thread를 사용할 때 주의할 점은 사용자 인터페..

델파이 2023.08.01

Delphi iOS 제작 시 Datasnap.DSConnect 문제 발생 및 해결

Delphi Alexandria 에서 Debug 환경에서 iOS Device 64 bit 개발을 하는 중에 TDSProviderConnection 을 사용하려 하면, Datasnap.DSConnect 문제가 아래와 같이 발생한다. 이를 해결하기 위해서는 Datasnap.DSConnect.pas 파일을 재 컴파일 해야 하는데, 개발툴에서 막고 있으므로, C:\Program Files (x86)\Embarcadero\Studio\22.0\source\data\datasnap 폴더안에 있는 Datasnap.DSConnect.pas 파일을 복사해서, 프로젝트 소스 폴더에 붙여 넣으면 된다. 프로젝트 컴파일 할 때, 최우선 선택 폴더가 프로젝트 소스 폴더 이기 때문에, 프로젝트 소스폴더에 있는 Datasnap.D..

델파이 2023.08.01

델파이 interface 이용하여, 여러 폼의 화면을 동시에 수정하기

폼 1개에서 데이터 변경이 일어날 경우, 다른 여러 폼에서 Display 수정이 필요할 경우, Interface 를 사용하면 비교적 쉽게 작업을 진행 할 수 있다. 프로젝트 파일의 구성은 다음과 같다. 프로젝트명: Project 폼1: Form1, 유닛이름: Unit1 폼2: Form2, 유닛이름: Unit2 1. Unit1 에 IChanged 인터페이스를 만든 다. IChange 인터페이스 밑줄에서 Ctrl+Shift+G 를 누르면 인터페이서 ID를 자동으로 생성할 수 있다. 이것 생성 안하면 아래의 Supports() 함수를 사용할 수 없다. 2. Unit1 에는 implementation 아래에 uses Unit2; 를 입력한다. 3. Unit2 위쪽의 uses 절에 Unit1 을 입력한다. 4. ..

FMX 2023.07.26

Skia for Delphi

Skia for Delphi 에서 사용하는 리소스는 세 가지 이다. 1. Skia (TSkSvg) > Scalable Vector Graphics > XML 을 이용한다 > 확장자가 SVG (Scalable Vector Graphics) 인 이미지 파일이다 > 속도가 빠르고, 아이콘, 배경화면 등 사용성이 좋다 2. Lottie Animation (TSkAnimatedImage) > GIF 같은 움직이는 이미지를 Vector 형식으로 만든 것이다 > SkAnimatedImage.Animation.Progress := 값 (0~1) 을 넣으면 Progress 를 조정할 수 있다. > Json 을 이용한다 3. Shader Language (TSkAnimatedPaintBox) > 프로그래밍을 이용하여 움직..

FMX 2023.07.06

Delphi FMX Style - Round Button

개발환경: Rad Studio Delphi 11.2 - Alexandria Round Button 의 경우 Target Platform 이 Windows 일경우 TCornerButton 을 사용하면 되지만, Android, iOS APP 에서는 TCornerButton 의 코너를 둥글게 하는 것이 안되므로, 아래와 같이 Style 등을 이용하여 구현한다. 목차: 1. 선택 시 글자색 변하는 Button 만들기 2. Style 이용하여 Box Button 만들기 3. Style 이용하여 Round Button 만들기 - Image File 이용 4. Style 이용하여 Round Button 만들기 - TRectangle 이용 1. 선택 시 글자색 변하는 Button 만들기 Button 선택 시 글자색을 ..

FMX 2023.07.03

delphi FMX Component 만들기

Radstduio Version: Radstudio 11.3 Alexandria 델파이에서 FMX 환경의 Component 를 만드는 방법을 정리해 보았다.1. TLayout  을 이용하여 새로운 Component 만들기2. Test 할 Project 만들기3. TestProject 의 Form 위에 TMyLayout 을 올려 보자4. TMyLayout 에 글자를 표시할 수 있도록 TLabel 을 추가해 보자5. FLabel.Stored := False 를 하여  TLabel 중복 생성을 방지하자.6. 디자인 타임에 FLabel 의 Text 값을 변경할 수 있도록 해 보자. 1. TLayout 을 이용하여 새로운 Component 만들기    2. TLayout 을 이용하여 새로운 Component 만들..

FMX 2023.06.29