본문 바로가기

2016/11

[설치] DD-WRT를 설치해보자 - WebGUI편 상당히 오래전 DD-WRT 펌웨어를 소개하고, 이 설치 방법을 포스팅하겠다고 했는데 어느새 벌써 11월의 마지막 주입니다.DD-WRT는 WRT계열 오픈소스 라우터 펌웨어로 라즈베리파이를 깊게 사용해보신 분이라면 OpenWRT 정도는 들어보셨을 겁니다. OpenWRT는 가장 오래되었고 가장 많은 기능을 수행할 수 있지만 여타 리눅스처럼 기본 기능만 들어있고 나머지는 패키지로 별도 설치, 설정해야하는 불편함이 있습니다. DD-WRT는 빌드 버전별로, 빈티지 별로 사전에 정의된 모든 기능이 다같이 들어있는 펌웨어로 초보자도 비교적 쉽게 다루지만 세세한 설정을 하기는 힘듭니다. 두 펌웨어 모두 공통적으로 리눅스 기반입니다.즉, 라우터로써의 기능 뿐 아니라 다른 기능도(웹서버 등) 가능하다는 이야기입니다.사실 소.. 더보기
[date] 현재 시간에서 특정 시간 더 php에서 현재의 시간으로부터 특정 시간의 값을 취하고 싶을 때 방법 1) 참고 : http://www.phpschool.com/gnuboard4/bbs/board.php?bo_table=qna_function&wr_id=200804#c_200865date('format', strtotime('interval')); 방법 2) 참고 : http://php.net/manual/kr/function.date-add.php#114856$date = new DateTime(now());$interval = new DateInterval('P1D'); $date->add($interval); 방법 1에서 format 에는 Y/m/d 연 / 월 / 일 H:i:s 시:분:초 interval 에는 now 현재시간 +3.. 더보기
[Component] Indy 에서 예외처리 하기 델파이는 Try ... except ... end 로 예외처리를 지원하고 있고 Indy 또한 Error Exception을 지원합니다.하지만 예전에는 Indy의 exception이 IdException에 정의되어 있었습니다.하지만 지금은 IdException을 uses 하면 파일이 있다고 나오지만 예전 코드나 예제는 더이상 사용할 수 없습니다. 왜냐하면 에러 정의가 IdException이 아닌 IdStack으로 옮겨졌기 때문입니다. 그래서 옛날 코드나 예제를 사용하면 특정 인디 버전부터는 E2003 Undeclared identifier 에러가 발생합니다.델파이는 대부분의 예제가 08년 09년을 기점으로 그 이전에 많이 기록이 남아 있습니다. 이제는 인디 컴포넌트의 예외처리를 하려면 IdStack을 us.. 더보기
TAlphaColor의 색상 표현 TRectangle, TEdit... 등등 TBrush나 기타 TAlphaColor를 프로퍼티로 갖는 객체의 색상 값은 일반적으로 BGR코드를 사용합니다. BGR코드란? 일종의 RGB 컬러와 같이 적색, 녹색, 청색의 조합으로 색을 표현하는 방식입니다. 쉽게 풀이하자면 RGB의 색상 배치를 프로그램이나 그 색상을 처리하는 코드의 처리 순서에 맞게 변경한 것으로 델파이는 BGR, 즉 청색, 녹색, 적색 순서로 색상을 입력받습니다. RGB계열 컬러에 대한 색상표는 이곳을 참고하세요. http://zapmap.com/colors/bgr.html 델파이는 RGB코드가 아닌 BGR코드를 사용하며 #RRGGBB가 아닌 $LLBBGGRR형식을 따릅니다. 기존에 웹이나 포토샵을 많이 다루던 분들은 생소한 포맷이나 기존.. 더보기
TEdit 클릭 시 내용 지워지기, 다시 나타내기 TEdit은 단일 라인의 입력 컴포넌트로 많이 쓰이는 컴포넌트입니다.TEdit은 기본적으로 네모 박스 하나만 나오고 이것이 무슨 값을 취하려는지 나오지 않습니다. 이렇게 네모 박스만 생기죠. 그래서 이 박스가 무엇인지를 위해 앞에 TLabel을 달거나 이미지를 붙여줍니다. 하지만 이렇게 하면 VCL이나 PC같이 큰 화면에서는 문제가 없지만 FMX에서는 가용 면적이 줄어드는 역효과가 있습니다.이를 위해 델파이는 TLabel이 아닌 TEdit의 TextPrompt 프로퍼티가 정의되어 있습니다.이 프로퍼티는 Prompt 즉, 해당 TEdit에 사용자가 입력한 내용과 별개로 배경처럼 해당 TEdit이 무엇을 입력받으려는지를 명시해주는 역할을 합니다. 이렇게 TEdit을 선택한 뒤, 해당 TEdit에서 입력받을 .. 더보기