퇴근5분전

https://www.youtube.com/watch?v=FkDQu_VJbvA 

 

 

 화면기획을 ppt로 할때 내가 관리하고 있는 이미지등을 사용하여 쉽게 ppt에 이미지를 드랍하여 사용할 수 있도록

만든 프로그램입니다.

 

:: 이거 만들때 블로그에 접속하지 않던 시기라... 기록겸하여 등록하는 글입니다.

 

 

'# 9) My Program(.NET) > JsFW40' 카테고리의 다른 글

LayerGrid] 다시 만듬.  (0) 2015.10.27
금전관리 프로그램.  (0) 2015.09.26
그리드 폼 만들기 (2)  (0) 2014.03.18
그리드 폼 만들기 (1)  (0) 2014.03.15
PRJMNG] JS 디자이너~  (0) 2012.12.27

 

 조금 다른 설계로 다시 만들고 있는 레이어 그리드!

 

목업 디자인용 그리드로 사용하기 위해서 그리드를 만들고 또 디자인 아이템을 다시 설계해서 만든 것...

 

 

7000개 까지는 생성해봤는데... 10000개는 에러나서 못만들고.

mockup만드는데 1000개의 Cell이면 뭐...

Cell병합과 RowHeight, ColWidth 를 각각 조정한 후 스샷을 찍은 것임.

 

처음엔 TableLayout으로 다시 커스텀 하려다가 안되는게 많아서 때리쳤음.

 

            grid1[0, 0].ColSpan = 3;

            // 아래 컬럼 merge
            grid1[2, 2].ColSpan = 2;
            grid1[2, 2].RowSpan = 3;
            
            // 컬럼 사이즈를 늘리면!! [0,0] 의 컬럼 폭도 넓혀!
            grid1.Columns[2].Width = 150;
            grid1.Rows[2].Height = 40;

            grid1.Columns[0].Width = 30;
            grid1[0, 0].ColSpan = 1;

 

소스도 전보다 깔끔하게 만들어졌고, 깜빡이는 문제를 나름 해결해놓은 것...

 

/*######################################################################################*/

 아래 는 기본 디자인컨트롤 TextBox와 그 속성 Text를 수정하면 실시간으로 서로 쌍방으로 변경이 됨.

서로 즉각 반응함.

 새로운 설계로 둘간 데이타를 주고 받는게 간편해졌고, 속성편집 컨트롤을 쉽게 구성하고 적용할 수 있음.

 

레이아웃그리드를 디자인용컨트롤로 프레임웍에 추가한 후 기존 레이아웃 그리드를 걷어내고 대체시킨 후엔

다시 mockup용 프로그램을 다시 만들어볼까함.

 

해보다가 프로그램중 희안한것 발견...

 .tt라는 템플릿 text라는게 비쥬얼스튜디오에서 지원이 되더군. ( 2013 커뮤니티 )

이거 획기적임 ㅡ.ㅡ;;; 오... 완전 새로운 발견! +_+;;;;

 

( 데모용 소스는 숨김 )

'# 9) My Program(.NET) > JsFW40' 카테고리의 다른 글

PPT 헬퍼...  (0) 2022.10.13
금전관리 프로그램.  (0) 2015.09.26
그리드 폼 만들기 (2)  (0) 2014.03.18
그리드 폼 만들기 (1)  (0) 2014.03.15
PRJMNG] JS 디자이너~  (0) 2012.12.27

 

 매달 엑셀로 은행 잔고등을 확인하는데 엑셀 백업하면서....

프로그램으로 만들어 관리해야지 했는데... 꾀 오래 손도 못대고 있다가 어제 잠자기전에 간단하게 만들었다.

 

 프로그램은 엑셀처럼 현재 잔고들을 입력하고 이전 이력을 따로 보관하도록 만들어놨다.

매달 나가는 금액들에 대한 내역이나 특이사항등을 기록하고 이력을 보관하도록 만들어놨다.

 

 

 

추후에 이력을 보거나 그래프등으로 자산변화등을 표기해볼까 한당.

 

가계부처럼 상세하게 기록하는 것은 없다. ( 가계부 못쓰겠더랑 ㅠㅠ 뭐랄까??? 어렵다. )

 

## 추가.

  조카들과 놀아주는게 역시 이제 체력이 ...

 조카들 가고 집에서 조금 손대봤다. 추석 특집영화 해적 재밌넹...

 초간단 가계부를 만들었다.

 왼쪽은 월 수입 내역, 오른쪽은 월(일별) 지출

 

수입과 지출에 대한 내용을 볼 수 있도록 만들었고... 물론 작성을 해야되는데...

10월부터는 엑셀을 대신해서 이걸로 써볼 것인다.

내 개발프레임웍을 간만에 써보니 가물 가물.. 그래도 적은 코드로 후딱 만들어서 사용이 가능하니 좋긴 하네.

이 페이지 기능 만드는데 딱 365라인이넹. 우연치 않게 딱 떨어지네...

 매일 매일 열어서 지출 내역을 써보고 매월 지출이 얼마인지 알 수 있겠넹..

 

 

 

'# 9) My Program(.NET) > JsFW40' 카테고리의 다른 글

PPT 헬퍼...  (0) 2022.10.13
LayerGrid] 다시 만듬.  (0) 2015.10.27
그리드 폼 만들기 (2)  (0) 2014.03.18
그리드 폼 만들기 (1)  (0) 2014.03.15
PRJMNG] JS 디자이너~  (0) 2012.12.27

 

그리드폼 수정하느라 하루가 가버렸넹...

이번에 새로 만든 특이한넘! 을 이어서 추가해본다. 

 

1. 그리드 폼을 선택하고 상세보기 클릭! 

 

2. 디자인창이 뜨는데 닫으면 그리드폼.. 아무것도 없는게 뜬다.

 

여기에 디자인버튼을 누르면 ...

 

 

  폼에 셋팅된 데이타 맞춤형 디자이너가 뜬다.

......

디자인 하면..

 

 

디자인을 저장하고... 닫으면.

 

 

 디자인 된 폼으로 나타남.

 추가 하면 추가 row가 계속 늘어나며 생기며 데이타를 관리 할 수 있음.

 

( 소스는 비공개.. )

끝!

 

 

 

 

 

 

'# 9) My Program(.NET) > JsFW40' 카테고리의 다른 글

LayerGrid] 다시 만듬.  (0) 2015.10.27
금전관리 프로그램.  (0) 2015.09.26
그리드 폼 만들기 (1)  (0) 2014.03.15
PRJMNG] JS 디자이너~  (0) 2012.12.27
jsfw ] New Version!  (0) 2012.05.13

 

 DB는 간단하게 Table 생성하고,

이번에 새로 만든 GridForm을 이용한 화면을 추가하면서 이글을 써본다.

정말 쓸게 없지만...  그만큼 간단하게 개발되는걸 남겨본다..

 

화면을 만들기 위해 사용자 정의 컨트롤을 추가하고 부모객체를 UserControl 에서 JSFW_Content 로 바꿔준다.

 

public partial class TestReportList : JSFW_Content
{
        public TestReportList()
        {
            InitializeComponent();
        }        
}

요렇게 하면 상속된 화면으로 바뀐다.

 

여기에 Jsfw_Grid를 올려준후 그리드는 dock = fill로 꽉 채워준다. ( 화면에 변화가 안보일것임. )

 

그 다음 그리드에 뿌려질 데이타를 위해 정의된 테이블 객체를 생성한다. JSFW.ProjectHistory.DB._JSFW_DB_WorksDataSet.TestReportDataTable rpt = new DB._JSFW_DB_WorksDataSet.TestReportDataTable();
      

그리드 초기화 하는 구문과 ( Jsfw_Grid.init = delegate{}; )을 폼 데이타 초기화( Init() ) 구문을 작성한다.

 public partial class TestReportList : JSFW_Content
    {
        JSFW.ProjectHistory.DB._JSFW_DB_WorksDataSet.TestReportDataTable rpt = new DB._JSFW_DB_WorksDataSet.TestReportDataTable();
        public TestReportList()
        {
            InitializeComponent();

            //그리드를 초기화 하는 구문
            jsfW_GRID1.Init = delegate
            {
                jsfW_GRID1.Headers = new Headers()
                {
                    {
                        new Header( rpt.IDColumn.ColumnName , "ID")         
                        { Width=50, Identity=true, DataType=typeof(int) } 
                    },
                    {
                        new Header( rpt.RptTitleColumn.ColumnName , "테스트명")         
                        { Width=250, AllowEditing=true, DataType=typeof(string) } 
                    }                     
                };
                jsfW_GRID1.Headers.PrimaryItems.Add(jsfW_GRID1.Headers[rpt.IDColumn.ColumnName]);
                jsfW_GRID1.SelectionMode = SourceGrid.GridSelectionMode.Row;
            };
        }

        public override void Init()
        {
            base.Init();

            // 그리드에 데이타 바인딩.
            jsfW_GRID1.DataSource = rpt.MDB_Load(DBENUM.WORKS.getConnectionStringInfo<AccessConnectionString>(), "");
        }
    }

 

JSFW_Window에 담아 띄워보면..

 

 

이렇게 그리드까지 만들어졌다.

 

기능 버튼( 추가, 삭제, 조회, 닫기, 보기 )을 추가해본다. 이때 ToolElmt 라는 프로퍼티에 버튼 리스트를 넣는다.

JSFW_ToolButtonElement 라는 버튼 객체인데. 이외에도 여러 타입이 있으나...

 

public partial class TestReportList : JSFW_Content
    {
        JSFW.ProjectHistory.DB._JSFW_DB_WorksDataSet.TestReportDataTable rpt = new DB._JSFW_DB_WorksDataSet.TestReportDataTable();
        public TestReportList()
        {
            InitializeComponent();

            ToolElmt = new JSFW_ToolElementList()
            {
                { new JSFW_ToolButtonElement(){ Text="추가", Key="ADD", Flat= FlatStyle.Flat, BackColor=Color.FromArgb(0,174,255), ForeColor = Color.FromArgb(255,255,255)},
                                                delegate{  }},  
                { new JSFW_ToolButtonElement(){ Text="삭제", Key="DEL", Flat= FlatStyle.Flat, BackColor=Color.FromArgb(0,174,255), ForeColor = Color.FromArgb(255,255,255)}, 
                                                delegate{   }}, 
                { new JSFW_ToolButtonElement(){ Text="저장", Key="SAVE", Flat= FlatStyle.Flat, BackColor=Color.FromArgb(0,174,255), ForeColor = Color.FromArgb(255,255,255)},
                                                delegate{   }}, 
                { new JSFW_ToolButtonElement(){ Text="조회", Key="SELECT", Flat= FlatStyle.Flat, BackColor=Color.FromArgb(0,174,255), ForeColor = Color.FromArgb(255,255,255)},
                                                delegate{ Init(); }}, 
                { new JSFW_ToolButtonElement(){ Text="닫기", Key="CLOSE", Flat= FlatStyle.Flat, BackColor=Color.FromArgb(0,174,255), ForeColor = Color.FromArgb(255,255,255)},
                                                delegate{ Master.Close(); }},
                { new JSFW_ToolSplitElement() { Width = 20 } },
                { new JSFW_ToolButtonElement(){ Text="상세보기", Key="DETAIL", Flat= FlatStyle.Flat, BackColor=Color.FromArgb(0,174,255), ForeColor = Color.FromArgb(255,255,255)},
                                                delegate{   }}
            };

            jsfW_GRID1.Init = delegate
            {
                jsfW_GRID1.Headers = new Headers()
                {
                    {
                        new Header( rpt.IDColumn.ColumnName , "ID")         
                        { Width=50, Identity=true, DataType=typeof(int) } 
                    },
                    {
                        new Header( rpt.RptTitleColumn.ColumnName , "테스트명")         
                        { Width=250, AllowEditing=true, DataType=typeof(string) } 
                    }                     
                };
                jsfW_GRID1.Headers.PrimaryItems.Add(jsfW_GRID1.Headers[rpt.IDColumn.ColumnName]);
                jsfW_GRID1.SelectionMode = SourceGrid.GridSelectionMode.Row;
            };
        }

        public override void Init()
        {
            base.Init();
            jsfW_GRID1.DataSource = rpt.MDB_Load(DBENUM.WORKS.getConnectionStringInfo<AccessConnectionString>(), "");
        }
    }

 

버튼들이 추가된 모습을 확인할수 있다.

 

각 추가기능을 넣으면..

추가

private void Insert()
{
      jsfW_GRID1.NewRow();
}

삭제

private void Delete()
{
      jsfW_GRID1.DeleteRow();
}

저장

private void Save()
{
      IList<QueryParams> prms = jsfW_GRID1.GetQueryParams();
      prms.MDB_Save(DataBaseConnectionInfoManager.Get<AccessConnectionString>(DBENUM.WORKS));
      Init();
}

힛... 너무 짧은가?... 이게 다임...

GetQueryParams() 에서 자동으로 쿼리를 만들어서 내보내 줌!

 

보기는 다음 편에 이어서...

 

 

 

 

 

 

 

'# 9) My Program(.NET) > JsFW40' 카테고리의 다른 글

금전관리 프로그램.  (0) 2015.09.26
그리드 폼 만들기 (2)  (0) 2014.03.18
PRJMNG] JS 디자이너~  (0) 2012.12.27
jsfw ] New Version!  (0) 2012.05.13
[JsFW40] 코딩을 시작하다!!  (0) 2010.11.10

 # 디자이너 화면...

 

도구상자,  디자이너, 속성창

 

 

 

# 디자이너 개체 구성

 

 

 

# 기본 컨셉

 1. 디자이너 : 화면구성을 런타임상에서 작성!

 2. 코드생성 : 디자이너에서 만들어진 구성을 각 사이트에 맞춤형 표준 코드로 변환!

 3. 화면내용을 디자이너에서 미리 확인 및 스토리보드(ppt)로 추출.

 

 

 

'# 9) My Program(.NET) > JsFW40' 카테고리의 다른 글

금전관리 프로그램.  (0) 2015.09.26
그리드 폼 만들기 (2)  (0) 2014.03.18
그리드 폼 만들기 (1)  (0) 2014.03.15
jsfw ] New Version!  (0) 2012.05.13
[JsFW40] 코딩을 시작하다!!  (0) 2010.11.10

 

  새로 만든 프로그램 모듈 관리 프로그램!!

 

win8 처럼 메트로UI 를 흉내 내봤는데 윈8을 조금밖에 못봐서 나름 상상력을 발휘해서... 프레임만 만들었고,

 

원 계획은 5월 쉬면서 만들 계획이었으나 워낙 좋은 자리가 생겨 계획을 변경됨.

 

 

-- 프로그램 플러그인 모듈이용.

-- 그리드 모듈 이용.

 

기능 : 등록된 프로그램을 그리드에 배치 후 프로세스 처리 실행!

 

 

 

눌림 버튼 이건 모바일 보니 꾹 누르고 있음 - 버튼 붙던데.. 그래서 만들었고 블로깅 해두었음.

 

쉬는 날 마다 추가해서 만들면... 음... 올해 안에 나오겠징...

'# 9) My Program(.NET) > JsFW40' 카테고리의 다른 글

금전관리 프로그램.  (0) 2015.09.26
그리드 폼 만들기 (2)  (0) 2014.03.18
그리드 폼 만들기 (1)  (0) 2014.03.15
PRJMNG] JS 디자이너~  (0) 2012.12.27
[JsFW40] 코딩을 시작하다!!  (0) 2010.11.10


 설계를 대략 마치고 드디어 코드를 시작했다.

Vs2010 을 이용해 좀더 유연한 코드로 생산성을 높여보고 있다.
( 앗! 실컷 네임 스페이스 정의해놓은걸 버렸나보네 .. ㅠㅠ )

# 우선순위 높은순서

- PROJECT_DESIGNER_Namespace  ** 제일 핵심 모듈임.
- PLUGIN_Namespace
- XML_Namespace
- WINDOWCONTROL_Namespace
- UTIL_Namespace
# 이하 JsFW20에서 천천히 뽑아내도 되는것

- Exception_Namespace
- DEBUG_Namespace
- ADONET_Namespace
- BASECOMMON_Namespace
- NETWORK_Namespace


기억나는데로 우선 써놓았다.  만들어갈 순서대로 정리해보았다.

# LINQ + 람다 + 확장메서드로 좀더 유연한 표현을 해보자!!
 소감 -> 표현하는데 간결하고 코드라인이 확 줄어서 너무 좋다!

위에꺼 모두 작성할건 아니고...

이전 JsFW20 에서 가져올건 가져오되 코드 수준을 4.0에 포커스를 맞추기 위해 모두 변환 할 것임.
필요없어 보이는건 과감히 버린다.
















'# 9) My Program(.NET) > JsFW40' 카테고리의 다른 글

금전관리 프로그램.  (0) 2015.09.26
그리드 폼 만들기 (2)  (0) 2014.03.18
그리드 폼 만들기 (1)  (0) 2014.03.15
PRJMNG] JS 디자이너~  (0) 2012.12.27
jsfw ] New Version!  (0) 2012.05.13