에 대한
덕분에, 컨트롤 읽거나 변경할 수있는 속성을 첨부했습니다. 스탠자 [Prop (Grid())]는 "모든 그리드 유형의 특성 목록"으로 이해할 수 있습니다.
이것은 빌드 된 wxWidgets 라이브러리가 객체 지향이라는 사실을 처리하는 wxHaskell의 방식입니다. Grid()는 실제로 Grid가 파생 된 상속 계층 구조의 모든 것을 의미합니다. 즉, Grid, ScrolledWindow, Panel, Window, EvtHandler, wxObject (http://wxhaskell.sourceforge.net/doc/Graphics-UI-WXCore-WxcClassTypes.html#204에서 시작하면 이것을 따라갈 수 있습니다.)
컨트롤 (예 : ListCtrl)의 문서는 속성 및 인스턴스 세트가있는 것으로보고됩니다. 기본적으로 Grid의 계층 구조에 적용되는 것을 사용할 수 있습니다. 예를 들어, 그리드 ScrolledWindow에서 유래, 그래서 당신은 사용할 수 있습니다
- 는 scrollRate 속성 컬러 클래스 예를 들어,의
- 속성 BGCOLOR, 색상
- 등
다음과 같이
당신은 이러한 속성을 사용하여, 예를 들어, 라인별로
g <- gridCtrl parent [color := red, bgcolor := green, scrollRate := 41]
...
set g [color := blue]
라인, 코드 같은 것을 읽어 다음
- 공급 된 속성 (소품)
- 과를 사용하여 initialWindow (창 를 입력 할 id 및 초기 및 플래그)를 호출 할 때는 floowing wrapped 순서 기능 :
- gridCreate 새로운 그리드 인스턴스를 사용하여 새 그리드 인스턴스
- 을 만들 수는 선택 0 행 0 열 및 아무것도 내부의 격자를 설정합니다.
- 그리드에 호출자에 의해 공급되는 특성 (소품)을 적용 (예를 들면 등을 설정 스타일 데이터를 입력)
읽기 힘든 코드를 만드는 부분은 피드 2 함수이다 , 그리고 코드가 '$'스타일로 작성되어 feed2에 올바른 매개 변수를 제공한다는 사실. 내 약간-손을 흔들며 설명은 위의 충분하지만, 당신이 세부 사항을 이해하려면, 단지
feed2 x y f = f x y
다음 괄호와 '$'애플리케이션을 대체 반전 기능 응용 프로그램을 피드 2로 구성되어 있음을 이해해야한다. 이것은 귀엽지는 않지만 읽기가 쉽습니다.
gridCtrl parent props =
feed2 props 0
(initialWindow (\id rect ->
\props flags ->
do
g <- gridCreate parent id rect flags
gridCreateGrid g 0 0 0
set g props
return g)))
[Markdown formatting reference] (http://stackoverflow.com/editing-help)를 읽고 코드를 다시 읽기 쉽게 읽을 수 있도록하십시오. –