« Previous : 1 : 2 : 3 : 4 : 5 : ... 8 : Next »

TwipsPerPixel

비주얼 베이직 6.0이하에서는 화면의 크기를 트윕(twip)으로 표시한다.
Screen.TwipsPerPixelX
Screen.TwipsPerPixelY


VBA에서는 없기에 다음과 같은 함수를 이용해야 한다. (source : MSDN)
Option Explicit

Declare Function GetDC Lib "user32" (ByVal hwnd As Long) As Long
Declare Function ReleaseDC Lib "user32" (ByVal hwnd As Long, _
ByVal hdc As Long) As Long
Declare Function GetDeviceCaps Lib "gdi32" (ByVal hdc As Long, _
ByVal nIndex As Long) As Long

Const HWND_DESKTOP As Long = 0
Const LOGPIXELSX As Long = 88
Const LOGPIXELSY As Long = 90

'--------------------------------------------------
Function TwipsPerPixelX() As Single
'--------------------------------------------------
'Returns the width of a pixel, in twips.
'--------------------------------------------------
Dim lngDC As Long
lngDC = GetDC(HWND_DESKTOP)
TwipsPerPixelX = 1440& / GetDeviceCaps(lngDC, LOGPIXELSX)
ReleaseDC HWND_DESKTOP, lngDC
End Function

'--------------------------------------------------
Function TwipsPerPixelY() As Single
'--------------------------------------------------
'Returns the height of a pixel, in twips.
'--------------------------------------------------
Dim lngDC As Long
lngDC = GetDC(HWND_DESKTOP)
TwipsPerPixelY = 1440& / GetDeviceCaps(lngDC, LOGPIXELSY)
ReleaseDC HWND_DESKTOP, lngDC
End Function


크리에이티브 커먼즈 라이센스
Creative Commons License

Posted by 솔라뷰

2010/05/14 00:55 2010/05/14 00:55
, , ,
Response
No Trackback , No Comment
RSS :
http://www.solarview.net/rss/response/302

건축환경 및 설비 분야에서 공기의 상태값을 아는 것이 매우 중요하다.
공기 상태를 계산하는 엑셀 프로그램을 여기에 올린다.

사용전 엑셀 보안 설정
- 도구 -> 매크로 -> 보안 -> "보안 수준" 탭에서 "보통"을 선택 (Excel 2003이하)

사용법
1) 시트 안에 있는 "계산기" 단추를 누른다.
사용자 삽입 이미지
2) 알고 있는 두 값을 선택해서 그 값을 입력한 다음 "계산" 단추를 누른다.
예) 건구온도 20도, 상대습도 55%를 입력해서 나머지 값을 구하고자 할 경우 다음과 같이 입력한다.
사용자 삽입 이미지

3) 계산결과는 엑셀 시트와 대화상자 동시에 출력이 된다.
사용자 삽입 이미지
4) 첨부 엑셀 파일

크리에이티브 커먼즈 라이센스
Creative Commons License

Posted by 솔라뷰

2010/05/11 02:28 2010/05/11 02:28
, , , , , , , ,
Response
No Trackback , No Comment
RSS :
http://www.solarview.net/rss/response/301

XML과 .NET

.NET의 XML DOM 클래스들
XML Document의 부분부분에 해당하는 클래스
document elementXmlElement
processing instructionsXmlProcessingInstruction
ElementXmlElement
AttributeXmlAttribute
Test valuesXmlText
NodesXmlNode
크리에이티브 커먼즈 라이센스
Creative Commons License

Posted by 솔라뷰

2010/04/27 17:46 2010/04/27 17:46
,
Response
No Trackback , No Comment
RSS :
http://www.solarview.net/rss/response/297

코드 생성기

프로그래밍을 하다보면 기계적으로 반복해야 할 일들이 생긴다. 이런 일들로 일일이 타이핑을 한다는 것은 매우 지루하고 따분한 일이다. 그래서 코드을 자동으로 생성하도록 할 필요가 생긴다.
곧 개발환경의 매크로를 이용하거나, Perl과 같은 문자열 처리기를 통하여 코드를 자동처리하도록 한다.
다음의 사이트도 그 중의 하나이다.

http://kimsk99.springnote.com/pages/63531
- 미리 지정된 텍스트를 현재 커서위치(실렉트된 것)에 삽입하는 매크로
- 현재 편집중인 파일과 같은 이름이고 확장자만 cpp <-> h 로 바뀐 파일을 열어주는 매크로

http://www.devpia.com/maeul/contents/d ··· f%3D8423
- 이름과 날짜를 입력
- 수평 라인 주석을 입력

http://serious-code.net/tc/tag/Visual%20Studio%20Macro
- 선택된 라인들에서 중복된 라인들은 삭제하고 나머지를 정렬하기
- 자동으로 getter/setter생성하기

Using Visual Studio .NET Macros

- 속성을 위한 매크로
사용자 삽입 이미지

Private 변수를 Property Procedure로 확장하기


크리에이티브 커먼즈 라이센스
Creative Commons License

Posted by 솔라뷰

2010/04/18 15:38 2010/04/18 15:38
, , ,
Response
No Trackback , 2 Comments
RSS :
http://www.solarview.net/rss/response/293

프로그램을 개발한 다음, 사용자가 설치해서 사용할 수 있도록 하기 위해서는 '설치용 프로그램'(일명 setup 프로그램)을 만들어야 한다.
Visual Studio .NET 2005에서는 솔루션에 '설치 프로젝트'를 추가하여 개발 프로그램을 설치가능하게 할 수 있다.
다음의 사이트는 이것을 잘 설명하고 있다.
http://www.nohungry.net/tt1/tag/110
크리에이티브 커먼즈 라이센스
Creative Commons License

Posted by 솔라뷰

2010/03/10 09:24 2010/03/10 09:24
,
Response
No Trackback , No Comment
RSS :
http://www.solarview.net/rss/response/286

BLT, blittable

BLT : block transfer
메모리의 내용을 옮기는 행위

<blittable>

Most data types have a common representation in both managed and unmanaged memory and do not require special handling by the interop marshaler. These types are called blittable types because they do not require conversion when they are passed between managed and unmanaged code.

대부분의 데이터 형식에는 관리되는 메모리와 관리되지 않는 메모리 모두에서 공통되는 표현이 있으므로, interop 마샬러에서 특별한 처리를 하지 않아도 됩니다. 이러한 형식은 관리 코드와 비관리 코드 사이에서 전달될 때 변환할 필요가 없으므로 blittable 형식이라고 합니다.

 
크리에이티브 커먼즈 라이센스
Creative Commons License

Posted by 솔라뷰

2009/07/19 19:14 2009/07/19 19:14
Response
No Trackback , No Comment
RSS :
http://www.solarview.net/rss/response/258

[book]Visual Basic.NET Class Design Handbook

비주얼 베이직 6.0에서 비주얼 베이직 닷넷(이하 비베닷넷)으로 옮기는 과정에서 참 많은 것이 장벽이었는데, 이런 것들 한 방에 해결해 준 책이 바로

Visual Basic .NET Class Design Handbook: Coding Effective Classes (Paperback)이다.

사용자 삽입 이미지

비베닷넷이 되면서 완전히 객체지향 프로그래밍 언어로 탈바꿈했다. 객체지향프로그래밍의 핵심은 그 무엇보다도 객체를 만들어내는 설계도 같은 클래스라고 할 수 있다. 책 제목에서도 알 수 있듯이 이 클래스를 어떻게 효과적으로 설계할 것인가를 자세히 다루고 있다.
참 맛있게 읽은 책이다.

During object-oriented analysis and design, we identify the most important objects in our system, and consider how they relate to each other. But during object-oriented programming, we don't write 'objects'; we define classes to represent the behavior and attributes of objects.
객체지향 분석과 설계를 하는 동안에, 우리는 우리 시스템 안의 가장 중요한 객체를 규명하고, 서로간에 어떻게 관계하는지를 고려한다. 그러나 객체지향 프로그래밍을 하는 동안에는 '객체들'을 작성하지 않는다. 다만 객체들의 행위와 속성을 대표하는 클래스를 정의한다.
(본문 중에서)

크리에이티브 커먼즈 라이센스
Creative Commons License

Posted by 솔라뷰

2009/07/14 20:37 2009/07/14 20:37
,
Response
No Trackback , No Comment
RSS :
http://www.solarview.net/rss/response/257

« Previous : 1 : 2 : 3 : 4 : 5 : ... 8 : Next »