12/24/2010

c# combobox readolny

comboBox.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;

12/21/2010

c# combobox to listview

using System;
using System.Windows.Forms;
using System.Drawing;

namespace WindowsApplication1
{
      public class ListViewWithComboBox : ListView
    {
        private ListViewItem item;
        string subItemText = "";
        int selectedSubItem = 0;
        private int X=0;
        private int Y=0;
        private System.Windows.Forms.ComboBox comboBoxLanguages = new System.Windows.Forms.ComboBox();
        private System.Windows.Forms.ComboBox comboBoxCountries = new System.Windows.Forms.ComboBox();
        private System.Windows.Forms.ColumnHeader columnHeader1;
        private System.Windows.Forms.ColumnHeader columnHeader2;

        public ListViewWithComboBox()
        {
            // set comboBoxLanguages (comboBox1)
            comboBoxLanguages.Items.Add("C#");
            comboBoxLanguages.Items.Add("Java");
            comboBoxLanguages.Items.Add("C++");
            comboBoxLanguages.Items.Add("PHP");
            comboBoxLanguages.Items.Add("Python");
            comboBoxLanguages.Items.Add("VB.Net");
            comboBoxLanguages.Items.Add("J#");
            comboBoxLanguages.Size = new System.Drawing.Size(0, 0);
            comboBoxLanguages.Location = new System.Drawing.Point(0, 0);
            this.Controls.AddRange(new System.Windows.Forms.Control[] { this.comboBoxLanguages });
            comboBoxLanguages.SelectedIndexChanged += new System.EventHandler(this.LanguageSelected);
            comboBoxLanguages.LostFocus += new System.EventHandler(this.LanguageFocusExit);
            comboBoxLanguages.KeyPress += new System.Windows.Forms.KeyPressEventHandler(this.LanguageKeyPress);
            comboBoxLanguages.DropDownStyle = ComboBoxStyle.DropDownList;
            comboBoxLanguages.Hide();

            // set comboBoxCountries (comboBox2)
            comboBoxCountries.Items.Add("India");
            comboBoxCountries.Items.Add("USA");
            comboBoxCountries.Items.Add("UK");
            comboBoxCountries.Items.Add("Australia");
            comboBoxCountries.Items.Add("Japan");
            comboBoxCountries.Items.Add("China");
            comboBoxCountries.Items.Add("Africa");
            comboBoxCountries.Size = new System.Drawing.Size(0, 0);
            comboBoxCountries.Location = new System.Drawing.Point(0, 0);
            this.Controls.AddRange(new System.Windows.Forms.Control[] { this.comboBoxCountries });
            comboBoxCountries.SelectedIndexChanged += new System.EventHandler(this.CountrySelected);
            comboBoxCountries.LostFocus += new System.EventHandler(this.CountryFocusExit);
            comboBoxCountries.KeyPress += new System.Windows.Forms.KeyPressEventHandler(this.CountryKeyPress);
            comboBoxCountries.DropDownStyle = ComboBoxStyle.DropDownList;
            comboBoxCountries.Hide();


            this.columnHeader1 = new System.Windows.Forms.ColumnHeader();
            this.columnHeader2 = new System.Windows.Forms.ColumnHeader();
      
            this.Columns.AddRange(new System.Windows.Forms.ColumnHeader[] {
                                                                            this.columnHeader1,
                                                                            this.columnHeader2,
                                                                           });
          
            this.Name = "listViewWithComboBox1";
            this.Size = new System.Drawing.Size(0,0);
            this.TabIndex = 0;
            this.View = System.Windows.Forms.View.Details;
            this.MouseDown += new System.Windows.Forms.MouseEventHandler(this.ListViewMouseDown);
            this.DoubleClick += new System.EventHandler(this.ListViewDoubleClick);
            this.GridLines = true ;
            //
            // columnHeader1
            //

            this.columnHeader1.Text = "Languages";
            this.columnHeader1.Width = 100;
            //
            // columnHeader2
            //

            this.columnHeader2.Text = "Countries";
            this.columnHeader2.Width = 100;
        }

        private void LanguageKeyPress(object sender , System.Windows.Forms.KeyPressEventArgs e)
        {
            if ( e.KeyChar == 13 || e.KeyChar == 27 )
            {
                comboBoxLanguages.Hide();
            }
        }

        private void CountryKeyPress(object sender, System.Windows.Forms.KeyPressEventArgs e)
        {
            if (e.KeyChar == 13 || e.KeyChar == 27)
            {
                comboBoxCountries.Hide();
            }
        }

        private void LanguageSelected(object sender , System.EventArgs e)
        {
            int i = comboBoxLanguages.SelectedIndex;
            if ( i >= 0 )
            {
                string str = comboBoxLanguages.Items[i].ToString();
                item.SubItems[selectedSubItem].Text = str;
            }
        }

        private void CountrySelected(object sender, System.EventArgs e)
        {
            int i = comboBoxCountries.SelectedIndex;
            if (i >= 0)
            {
                string str = comboBoxCountries.Items[i].ToString();
                item.SubItems[selectedSubItem].Text = str;
            }
        }

        private void LanguageFocusExit(object sender , System.EventArgs e)
        {
            comboBoxLanguages.Hide();
        }
        private void CountryFocusExit(object sender, System.EventArgs e)
        {
            comboBoxCountries.Hide();
        }

        public  void ListViewDoubleClick(object sender, System.EventArgs e)
        {
            // Check whether the subitem was clicked
            int start = X ;
            int position = 0 ;
            int end = this.Columns[0].Width ;
            for ( int i=0; i < this.Columns.Count ; i++)
            {
                if ( start > position && start < end )
                {
                    selectedSubItem = i ;
                    break;
                }
              
                position = end ;
                end += this.Columns[i].Width;
            }

            subItemText = item.SubItems[selectedSubItem].Text ;

            string column = this.Columns[selectedSubItem].Text ;
            if (column == "Languages")
            {
                Rectangle r = new Rectangle(position, item.Bounds.Top ,end  , item.Bounds.Bottom);
                comboBoxLanguages.Size  = new System.Drawing.Size(end - position , item.Bounds.Bottom-item.Bounds.Top);
                comboBoxLanguages.Location = new System.Drawing.Point(position, item.Bounds.Y);
                comboBoxLanguages.Show();
                comboBoxLanguages.Text = subItemText;
                comboBoxLanguages.SelectAll();
                comboBoxLanguages.Focus();
            }
            else if(column == "Countries")
            {
                Rectangle r = new Rectangle(position, item.Bounds.Top, end, item.Bounds.Bottom);
                comboBoxCountries.Size = new System.Drawing.Size(end - position, item.Bounds.Bottom - item.Bounds.Top);
                comboBoxCountries.Location = new System.Drawing.Point(position, item.Bounds.Y);
                comboBoxCountries.Show();
                comboBoxCountries.Text = subItemText;
                comboBoxCountries.SelectAll();
                comboBoxCountries.Focus();
            }
        }

        public void ListViewMouseDown(object sender, System.Windows.Forms.MouseEventArgs e)
        {
            item  = this.GetItemAt(e.X , e.Y);
            X = e.X ;
            Y = e.Y ;
        }

    }
}

c# listview 에서 row 선택?

listview.items[i].selected = true; 끝

12/15/2010

mssql 날짜 함수 (펌)

SELECT DATEADD(MM, +1, '2010-08-08')

, CONVERT(CHAR, DATEADD(MM, +1, '2010-08-08'), 23)

, SUBSTRING(CONVERT(CHAR, DATEADD(MM, +1, '2010-08-08'), 23), 1, 7)+'-01'

, GETDATE()

, CONVERT(CHAR(10), GETDATE(), 121)

, DATEDIFF(DD, SUBSTRING(CONVERT(CHAR, DATEADD(MM, +1, '2010-08-08'), 23), 1, 7)
+'-01', CONVERT(CHAR(10), GETDATE(), 121))

, DATEDIFF(DD, CONVERT(CHAR(10), GETDATE(), 121), SUBSTRING
(CONVERT(CHAR, DATEADD(MM, +1, '2010-08-08'), 23), 1, 7)+'-01')


결과 >>>

2010-09-08 00:00:00.000
2010-09-08
2010-09-01
2010-11-30 20:19:45.530
2010-11-30
90
-90

mssql 날짜 함수 펌

SELECT DATEADD(MM, +1, '2010-08-08')

           , CONVERT(CHAR, DATEADD(MM, +1, '2010-08-08'), 23)

           , SUBSTRING(CONVERT(CHAR, DATEADD(MM, +1, '2010-08-08'), 23), 1, 7)+'-01'

           , GETDATE()

           , CONVERT(CHAR(10), GETDATE(), 121)

           , DATEDIFF(DD, SUBSTRING(CONVERT(CHAR, DATEADD(MM, +1, '2010-08-08'), 23), 1, 7)
             +'-01', CONVERT(CHAR(10), GETDATE(), 121))

           , DATEDIFF(DD, CONVERT(CHAR(10), GETDATE(), 121), SUBSTRING
          
(CONVERT(CHAR, DATEADD(MM, +1, '2010-08-08'), 23), 1, 7)+'-01')


결과  >>>

2010-09-08 00:00:00.000
2010-09-08                   
2010-09-01
2010-11-30 20:19:45.530
2010-11-30
90
-90

12/14/2010

MSSQL CAST, CONVERT

http://blog.daum.net/sobakcc/8436364

위 사이트에 가면 됨!

CAST 및 CONVERT

식을 다른 데이터 형식으로 명시적으로 변환합니다. CAST 및 CONVERT는 비슷한 기능을 제공합니다.

구문

CAST 사용

CAST ( expression! AS data_type )

CONVERT 사용

CONVERT ( data_type [ ( length ) ] , expression! [ , style ] )

인수

expression!

유효한 Microsoft® SQL Server™ 식입니다. 자세한 내용은 을 참조하십시오.

data_type

bigint, sql_variant 등 대상 시스템 제공 데이터 형식입니다. 사용자 정의 데이터 형식은 사용할 수 없습니다. 자세한 내용은 데이터 형식을 참조하십시오.

length

nchar, nvarchar, char, varchar, binary, varbinary 데이터 형식의 선택적 매개 변수입니다.

style

datetime, smalldatetime 데이터를 문자 데이터(nchar, nvarchar, char, varchar, nchar, nvarchar 데이터 형식)로 변환할 때 사용되는 날짜 형식이나 float, real, money, smallmoney 데이터를 문자 데이터(nchar, nvarchar, char, varchar, nchar, nvarchar 데이터 형식)로 변환할 때 사용되는 문자열 형식의 스타일입니다.

SQL Server는 쿠웨이트 알고리즘을 사용하여 아랍어 날짜 형식을 지원합니다.

다음 표에서 왼쪽 두 열은 datetime 또는 smalldatetime을 문자 데이터로 변환하기 위한 style 값을 나타냅니다. 세기가 포함된 네 자리 연도(yyyy)를 구하려면 style 값에 100을 더합니다.

세기 포함 안함
(yy)
세기 포함
(yyyy)

표준

입력/출력**
- 0 또는 100 (*) 기본값 mon dd yyyy hh:miAM(또는 PM)
1 101 USA mm/dd/yy
2 102 ANSI yy.mm.dd
3 103 영국/프랑스 dd/mm/yy
4 104 독일 dd.mm.yy
5 105 이탈리아 dd-mm-yy
6 106 - dd mon yy
7 107 - Mon dd, yy
8 108 - hh:mm:ss
- 9 또는 109 (*) 기본값 + 밀리초 mon dd yyyy hh:mi:ss:mmmAM(또는 PM)
10 110 USA mm-dd-yy
11 111 일본 yy/mm/dd
12 112 ISO yymmdd
- 13 또는 113 (*) 유럽 기본값 + 밀리초 dd mon yyyy hh:mm:ss:mmm(24h)
14 114 - hh:mi:ss:mmm(24h)
- 20 또는 120 (*) ODBC 표준 yyyy-mm-dd hh:mi:ss(24h)
- 21 또는 121 (*) ODBC 표준(밀리초) yyyy-mm-dd hh:mi:ss.mmm(24h)
- 126(***) ISO8601 yyyy-mm-dd Thh:mm:ss:mmm(공간 없음)
- 130* 쿠웨이트 dd mon yyyy hh:mi:ss:mmmAM
- 131* 쿠웨이트 dd/mm/yy hh:mi:ss:mmmAM

*     기본값(style 0 또는 100, 9 또는 109, 13 또는 113, 20 또는 120, 21 또는 121)은 항상 세기(yyyy)를 반환합니다.

밑에 예제는 Convert함수와 날짜함수를 사용하여서 뽑아온것입니다.

 

1) 오늘 작성된 글중 Top 10개

SELECT TOP 10 m_no, m_table, a.cat_num, m_subject, m_insertdate, m_read, b.binfo_type
from m_board a inner join m_binfo b on a.m_table = b.binfo_table
where convert(varchar(40), m_insertdate, 110) = convert(varchar(40),getdate(), 110) and  m_listnum <> 0 and binfo_type <> 'Fbd' 
order by m_read desc

 

2) 오늘부터 일주일전까지 작성된 글중 Top 10개
SELECT TOP 10 m_no, m_table, a.cat_num, m_subject, m_insertdate, m_read, b.binfo_type
from m_board a inner join m_binfo b on a.m_table = b.binfo_table
where convert(varchar(40),  m_insertdate, 110) >= convert(varchar(40), Dateadd(day,-7, getdate()), 110) and  m_listnum <> 0 and binfo_type <> 'Fbd' 
order by m_read desc

 

3) 오늘부터 한달전까지 작성된글중 랜덤하게 10개

SELECT TOP 10 m_no, m_table, a.cat_num, m_subject, m_insertdate, m_read, b.binfo_type
from m_board a inner join m_binfo b on a.m_table = b.binfo_table
where  convert(varchar(40),  m_insertdate, 110) >= convert(varchar(40), Dateadd(month,-1, getdate()), 110) and  m_listnum <> 0 and binfo_type <> 'Fbd' 
order by newid()



convert date 표현식

convert(<변환할타입>,<변환할값>,표현식)
요렇게 쓸수있다.

convert(varchar(6),getDate(),112)

이렇게 쓴건 getDate()로 현재시간을 얻어온 datetime값을 112번표현식으로 varchar6자리로 변환시키라는뜻...

이 표현식에는 뭐가 있는지 보면...

표현식  |  결과값

-----------------------------

100      |     01 29 2009  2:55PM
101      |     01/29/2009
102      |     2009.01.29
103      |     29/01/2009
104      |     29.01.2009
105      |     29-01-2009
106      |     29 01 2009
107      |     01 29, 2009
108      |     14:55:06
109      |     01 29 2009  2:55:06:170PM
110      |     01-29-2009
111      |     2009/01/29
112      |     20090129
113      |     29 01 2009 14:55:06:170
114      |     14:55:06:170
120      |     2009-01-29 14:55:06
121      |     2009-01-29 14:55:06.170

11/25/2010

액션 넣을때..

1.이미지/텍스트 를 생성
2.심볼로 변환
3.심볼에 이름을 맞춰줌
4.onRelease에 넣어줌

11/11/2010

create_procedure

create procedure SIN_KUNNR_SEARCH
@startchar  varchar(2)
as
begin
declare  @hangle_jaeum varchar(100)
declare  @english varchar(100)
declare  @count varchar(100)
declare  @endchar varchar(2)
set  @hangle_jaeum  = 'ㄱㄴㄷㄹㅁㅂㅅㅇㅈㅊㅋㅌㅍㅎ힣'
set  @english  ='ABCDEFGHIJKLMNOPQRSTUVWXYZ('
set  @count  = '1234567890'
set  @endchar = SUBSTRING(@hangle_jaeum, charindex( @startchar, @hangle_jaeum, 0 )+1, 1 )
    if charindex( @startchar, @english, 0 )>0
        begin select NAME1 from SIN_KUNNR where substring(NAME1,1,1)between 'a' and 'z' order by NAME1
        end
    else if charindex( @startchar, @count, 0)>0
        begin select NAME1 from SIN_KUNNR where substring(NAME1,1,1) between '0' and '9' order by NAME1
        end
    else if charindex( @startchar, @hangle_jaeum, 0 )>0
        begin  select NAME1 from SIN_KUNNR where NAME1 between @startchar and @endchar
        end
end

문자열 받아서 초성값 넘기기

        public string chosungfuncFind(String origString)
        {
            tmpData = "";
            choValue = "";
            //Console.WriteLine(origString.Length);
            for (int i = 0; i < origString.Length; i++)
            {
                tmpData = origString.Substring(i, 1);
                char origChar = tmpData.ToCharArray(0, 1)[0];
                int unicode = Convert.ToInt32(origChar);

                uint jongCode = 0;
                uint jungCode = 0;
                uint choCode = 0;
                if (unicode < 44032 || unicode > 55203)
                {
                    choValue += tmpData;
                    //Console.WriteLine("{0}의 초성 : {1}, 중성 : {2}, 종성 : {3}", origString, origString, "", "");
                }
                else
                {
                    uint uCode = Convert.ToUInt32(origChar - '\xAC00');
                    jongCode = uCode % 28;
                    jungCode = ((uCode - jongCode) / 28) % 21;
                    choCode = ((uCode - jongCode) / 28) / 21;
                    char[] choChar = new char[] { 'ㄱ', 'ㄲ', 'ㄴ', 'ㄷ', 'ㄸ', 'ㄹ', 'ㅁ', 'ㅂ', 'ㅃ', 'ㅅ', 'ㅆ', 'ㅇ', 'ㅈ', 'ㅉ', 'ㅊ', 'ㅋ', 'ㅌ', 'ㅍ', 'ㅎ' };
                    choValue += choChar[choCode];
                }
                //char[] jungChar = new char[] { 'ㅏ', 'ㅐ', 'ㅑ', 'ㅒ', 'ㅓ', 'ㅔ', 'ㅕ', 'ㅖ', 'ㅗ', 'ㅘ', 'ㅙ', 'ㅚ', 'ㅛ', 'ㅜ', 'ㅝ', 'ㅞ', 'ㅟ', 'ㅠ', 'ㅡ', 'ㅢ', 'ㅣ' };
                //char[] jongChar = new char[] { ' ', 'ㄱ', 'ㄲ', 'ㄳ', 'ㄴ', 'ㄵ', 'ㄶ', 'ㄷ', 'ㄹ', 'ㄺ', 'ㄻ', 'ㄼ', 'ㄽ', 'ㄾ', 'ㄿ', 'ㅀ', 'ㅁ', 'ㅂ', 'ㅄ', 'ㅅ', 'ㅆ', 'ㅇ', 'ㅈ', 'ㅊ', 'ㅋ', 'ㅌ', 'ㅍ', 'ㅎ' };
                //Console.WriteLine("{0}의 초성 : {1}, 중성 : {2}, 종성 : {3}", origString, choChar[choCode].ToString(), jungChar[jungCode].ToString(), jongChar[jongCode].ToString());
            }
            //MessageBox.Show(choValue);
            cnt++;
            Console.WriteLine(choValue +"___"+ cnt);
/*          char origChar = origString.ToCharArray(0, 1)[0];
            int unicode =Convert.ToInt32(origChar);

            uint jongCode = 0;
            uint jungCode = 0;
            uint choCode = 0;
            if(unicode < 44032 || unicode > 55203)
                Console.WriteLine("{0}의 초성 : {1}, 중성 : {2}, 종성 : {3}", origString, origString,"","");
            else
            {
                uint uCode =Convert.ToUInt32(origChar -'\xAC00');
                jongCode = uCode % 28;
                jungCode = ((uCode - jongCode) / 28) % 21;
                choCode = ((uCode - jongCode) / 28) / 21;
            }
            char[] choChar =new char[] {'ㄱ','ㄲ','ㄴ','ㄷ','ㄸ','ㄹ','ㅁ','ㅂ','ㅃ','ㅅ','ㅆ','ㅇ','ㅈ','ㅉ','ㅊ','ㅋ','ㅌ','ㅍ','ㅎ'};
            char[] jungChar =new char[]{'ㅏ','ㅐ','ㅑ','ㅒ','ㅓ','ㅔ','ㅕ','ㅖ','ㅗ','ㅘ','ㅙ','ㅚ','ㅛ','ㅜ','ㅝ','ㅞ','ㅟ','ㅠ','ㅡ','ㅢ','ㅣ'};
            char[] jongChar =new char[]{' ','ㄱ','ㄲ','ㄳ','ㄴ','ㄵ','ㄶ','ㄷ','ㄹ','ㄺ','ㄻ','ㄼ','ㄽ','ㄾ','ㄿ','ㅀ','ㅁ','ㅂ','ㅄ','ㅅ','ㅆ','ㅇ','ㅈ','ㅊ','ㅋ','ㅌ','ㅍ','ㅎ'};
            Console.WriteLine("{0}의 초성 : {1}, 중성 : {2}, 종성 : {3}", origString, choChar[choCode].ToString(), jungChar[jungCode].ToString(), jongChar[jongCode].ToString());
*/          return choValue;
        }

10/26/2010

링크태그 CSS

CSS 링크 스타일

링크 효과(?) 는 홈페이지를 한번이라도 접해본 분이라면 알거라고 본다. 한창 나모나 기타 고전 유틸리티 쓰던시절에 CSS를 쓰지않았더라도 링크만은 거의 들어갔으니까. 일단 간단한 예제부터 보자

1.a:link{ text-decoration:none; color:#f33;}/*방문하지 않았을때 */
2.a:visited{text-decoration:none;color:#f33;}/*방문했을떄*/
3.a:hover{text-decoration:none;color:#c00;}/*마우스가 위로 올라갔을떄*/
4.a:active{text-decoration:none;color:#c00;}/*링크가 화성화 즉 클릭했을떄*/

위의 CSS는 한번쯤은 봐왔을 것이다. 정확히 말하면 유사 클래스(:link, :visited, :hover ,:active)를 사용한경우다.

text-decoration에도 여러속성이 있다. 아래를 참조하자

1.a{ text-decoration:none; }/*일반적으로 밑줄등 아무꾸밈을 주지않는다*/
2.a{ text-decoration:blink; }/*깜빡인다*/
3.a{ text-decoration:line-through; }/*텍스트의 가운데선*/
4.a{ text-decoration:overline; }/*텍스트의 윗줄*/
5.a{ text-decoration:underline; }/*텍스트의 밑줄*/

 

중요한점은 유사 클래스(:link, :visited, :hover ,:active)의 순서이다. 순서가 바뀌게 되면 적용되지않는다.:hover ,:active :link, :visited, 이럴 경우 :link, :visited의 스타일이 :hover ,:active스타일을 덮어스게되버린다

따라서 유사 클래스(:link, :visited, :hover ,:active)이순서는 반드시기억하자

외우는 TIP:Love:HAte

링크 역시 꾸미기는 마찬가지

다른 CSS꾸미듯이 링크역시 속성,값을 주고 구미기는마찬가지다.예로 아이디 일반링크의 그림 그리고 마우스를 올렸을떄 그림 변화(흔히 말하는 롤오버(이에대해선 다로 포스팅), 색깔변화등 마찬가지다 예제를 보자

1.<p><a id="line" href="#">예제</a></p>
2.<p><a id="rolling" href="#">예제</a></p>
1.#line a{ font-color:#666 ;} /* 아이디 line의 폰트 색깔*/ }
2.#line a:hover{ font-color:#999 ;} /* 아이디 line의 위에 올렸을떄  폰트 색깔*/ }
3.#rolling a{backgriund:url(normal.gif) no-repeat 0 0;} /* 아이디 rolling의 평소 이미지*/ }
4.#rolling a: hover{backgriund:url(effect.gif) no-repeat 0 0;} /* 아이디 rolling의 위에 올렸으대 이미지*/}

이외에도 선을 추가한다던지 배경색을 변화시킨다던지 폰트타입을 바꾼다던지 여러가지로 꾸밀 수 있는 것이다.

10/25/2010

procedure output.?!

CREATE PROCEDURE usp_withANumber
@EmployeeID INT = 10 <- EmployeeID에 기본값을 지정한 것
@outvalue int output <- outvalue에 output 변수를 쓰겠다는것
@currency_cursor CURSOR VARYING OUTPUT <- output 매개변수로 커서를 사용할때
AS
SELECT @outvalue = ManagerID <- 관리자 ID를 output 매개변수에 설정
FROM HumanResource.analysisDate
WHERE ManagerID = @ EmployeeID
GO

DECLARE @ManagerID INT; <- 저장프로시저 output 매개변수에 반환하는 값저장을 위한 지역변수선언

EXECUTE usp_withANumber 20, @ManagerID output <-반환되는값 조회

GO

create procedure

DataBase/MS-SQL 2008/06/27 18:29

출처 에구머니나 | stayintune
원문 http://blog.naver.com/stayintune/80018193893

//프로시저 생성

create procedure sp_user   //proc로 줄여쓸 수 있다.

as

begin

select u.id,name,age,login

from userinfo u, userlog l

where u.id=l.id

end

//프로시저 출력

exec sp_user  

//개체 확인

sp_helptext sp_user 

//프로시저 삭제

drop proc sp_user 

//#으로 테이블과 마찬가지로 임시프로시저 생성가능 (연결이 끊어지면 사라진다.)

create procedure #sp_user ~~  

//임시 프로시저 출력

#sp_user  

엔터프라이즈에 가서 도구 안에 마법사를 가면 쉽게 프로시저를 만들 수 있다. 프로시저는 주로 삽입, 삭제, 업데이트에 쓰인다.

조회는 주로 뷰를 이용한다. 역시 엔터프라이즈에 가서 새뷰를 이용하면 보면서 쉽게 만들 수 있다.

뷰는 프로시저와 달리 테이블처럼 출력 할 수 있다.

select * from 뷰명

//매개변수(패러미터)가 있는 프로시저

create proc sp_user1

@age int

as

begin

select u.id,name,age,login

from userinfo u, userlog l

where u.id=l.id and age>@age

end

//출력시

sp_user1 25   //프로시저명 뒤에 매개변수값을 줘야한다.

//패러미터 값과 초기값을 가지는 프로시저 만들기

create proc sp_user3

@age int = 25,   // 값이 없을 경우 age=25의 초기값을 지닌다.

@sex char(1) = 'm'

as

begin

select u.id,name,age,login

from userinfo u, userlog l

where u.id=l.id and age = @age and sex = @sex

end

sp_user3 22,'f'

//프로시저 문자열을 이용하기

create proc sp_test

@tb varchar(20),

@titleid varchar(20)

as

begin

declare @sql varchar(100)

set @sql = 'select * from ' + @tb + ' where title_id ='''+ @titleid+''''

exec(@sql)   //exec는 @sql을 실행한다는 뜻.

end

sp_test 'titles','bu1032'

//프로시저의 문자열 이용 (@num 값의 타입을 int가 아닌 varchar로 받아야 한다.)

if exists(select * from dbo.sysobjects where id=object_id('sp_extables'))

drop proc sp_extables

go

create proc sp_extables

@num varchar(10)

as

begin

declare @str varchar(100)

set @str='select top ' +@num+ ' * from extable order by idx desc'

exec(@str)

end

sp_extables '10'

//output이 있는 프로시저 (위의 것은 input만 있었고 지금부터.. 중요~~)

create proc sp_getusername

@id varchar(10),

@name varchar(10) output,

@login int output

as

begin

select @name=name, @login=login from userinfo u, userlog l

where u.id=l.id and u.id=@id

end

declare @name varchar(10), @login int

exec sp_getusername 'sumi',@name output, @login output

select @name, @login   //sumi라는 id를 가진 사람의 name과  login을 출력하게 된다.

10/21/2010

달력에서 선택시 값?

            DateTime dt = new DateTime(Calendar.SelectionStart.Year, Calendar.SelectionStart.Month, Calendar.SelectionStart.Day);
            String tmpData = dt.ToString().Substring(0, 10);

10/12/2010

안드로이드 코드??

*#*#232339#*#* OR *#*#526#*#* OR *#*#528#*#* – WLAN test (Use “Menu” button to start various tests)
*#*#232338#*#* – Shows WiFi MAC address
*#*#1472365#*#* – GPS test
*#*#1575#*#* – Another GPS test
*#*#232331#*#* – Bluetooth test
*#*#232337#*# – Shows Bluetooth device address
*#*#8255#*#*This code can be used to launch GTalk Service Monitor.
Codes to get Firmware version information:*#*#4986*2650468#*#* – PDA, Phone, H/W, RFCallDate
*#*#1234#*#* – PDA and Phone
*#*#1111#*#* – FTA SW Version
*#*#2222#*#* – FTA HW Version
*#*#44336#*#* - PDA, Phone, CSC, Build Time, Changelist number
Codes to launch various Factory Tests:*#*#0283#*#* – Packet Loopback
*#*#0*#*#* – LCD test
*#*#0673#*#* OR *#*#0289#*#* – Melody test
*#*#0842#*#* – Device test (Vibration test and BackLight test)
*#*#2663#*#* – Touch screen version
*#*#2664#*#* – Touch screen test
*#*#0588#*#* – Proximity sensor test
*#*#3264#*#* – RAM version

9/17/2010

farpoint spread

http://www.mungchung.com/xe/?mid=spread&listStyle=webzine&document_srl=2818&sort_index=readed_count&order_type=desc

참고해서 하자..

9/16/2010

body 에 넣어주면 html 투명..

 STYLE="background-color:transparent"

input css style

출처 : http://inusme.com/entry/HTML-input%EC%8A%A4%ED%83%80%EC%9D%BC

고맙습니다 ~~


<INPUTstyle="BORDER-RIGHT: #666666 1px solid; BORDER-TOP: #666666 1px solid;BORDER-LEFT: #666666 1px solid; WIDTH: 150px; BORDER-BOTTOM: #6666661px solid">
style="border: 1px solid #666666;"


<INPUTstyle="BORDER-RIGHT: #666666 1px solid; BORDER-TOP: #666666 1px solid;BORDER-LEFT: #666666 1px solid; WIDTH: 150px; BORDER-BOTTOM: #6666661px solid; BACKGROUND-COLOR: #f8f8f8">
style="background-color:#f8f8f8;border: 1px solid #666666;"


<INPUTstyle="BORDER-RIGHT: #666666 1px solid; BORDER-TOP: #898989 1px solid;BORDER-LEFT: #898989 1px solid; WIDTH: 150px; COLOR: #666666;BORDER-BOTTOM: #666666 1px solid; BACKGROUND-COLOR: #f8f8f8">
style="background-color:#f8f8f8;border-top: 1px solid #898989; border-bottom: 1px solid #666666;border-left: 1px solid #898989; border-right: 1px solid #666666;


<INPUTstyle="BORDER-RIGHT: 0px; BORDER-TOP: 0px; BORDER-LEFT: 0px; WIDTH:150px; COLOR: #666666; BORDER-BOTTOM: #666666 1px solid;BACKGROUND-COLOR: #f9f9f9">
style="background-color:#f9f9f9; border-top: 0px; border-bottom: 1px solid #666666; border-left: 0px; border-right:0px;

< 예> <INPUT style="BORDER-RIGHT: 0px; BORDER-TOP: #666666 1pxsolid; BORDER-LEFT: #666666 1px solid; WIDTH: 100px; COLOR: #666666;BORDER-BOTTOM: #666666 1px solid; BACKGROUND-COLOR: #f9f9f9">   <INPUT style="BORDER-RIGHT: 0px; BORDER-TOP: #666666 1px solid;BORDER-LEFT: 0px; WIDTH: 100px; COLOR: #666666; BORDER-BOTTOM: #6666661px solid; BACKGROUND-COLOR: #f9f9f9">    <INPUTstyle="BORDER-RIGHT: 0px; BORDER-TOP: 0px; BORDER-LEFT: 0px; WIDTH:100px; COLOR: #666666; BORDER-BOTTOM: #666666 2px solid;BACKGROUND-COLOR: #f9f9f9">


<INPUTstyle="BORDER-RIGHT: #666666 1px dotted; BORDER-TOP: #666666 1pxdotted; BORDER-LEFT: #666666 1px dotted; WIDTH: 150px; COLOR: #666666;BORDER-BOTTOM: #666666 1px dotted; BACKGROUND-COLOR: #ffffff"> style="border: 1px dotted #666666;"
<INPUTstyle="BORDER-RIGHT: #666666 2px dotted; BORDER-TOP: #666666 2pxdotted; BORDER-LEFT: #666666 2px dotted; WIDTH: 150px; COLOR: #666666;BORDER-BOTTOM: #666666 2px dotted; BACKGROUND-COLOR: #ffffff"> style="border: 2px dotted #666666;"
<INPUTstyle="BORDER-RIGHT: #666666 5px dotted; BORDER-TOP: #666666 5pxdotted; BORDER-LEFT: #666666 5px dotted; WIDTH: 150px; COLOR: #666666;BORDER-BOTTOM: #666666 5px dotted; BACKGROUND-COLOR: #ffffff"> style="border: 5px dotted #666666;"


<INPUTstyle="BORDER-RIGHT: #666666 1px dashed; BORDER-TOP: #666666 1pxdashed; BORDER-LEFT: #666666 1px dashed; WIDTH: 150px; COLOR: #666666;BORDER-BOTTOM: #666666 1px dashed; BACKGROUND-COLOR: #ffffff"> style="border: 1px dashed#666666;"
<INPUTstyle="BORDER-RIGHT: #666666 2px dashed; BORDER-TOP: #666666 2pxdashed; BORDER-LEFT: #666666 2px dashed; WIDTH: 150px; COLOR: #666666;BORDER-BOTTOM: #666666 2px dashed; BACKGROUND-COLOR: #ffffff"> style="border: 2px dashed #666666;"
<INPUTstyle="BORDER-RIGHT: #666666 3px dashed; BORDER-TOP: #666666 3pxdashed; BORDER-LEFT: #666666 3px dashed; WIDTH: 150px; COLOR: #666666;BORDER-BOTTOM: #666666 3px dashed; BACKGROUND-COLOR: #ffffff"> style="border: 3px dashed #666666;"



<INPUTstyle="BORDER-RIGHT: #666666 3px double; BORDER-TOP: #666666 3pxdouble; BORDER-LEFT: #666666 3px double; WIDTH: 150px; COLOR: #666666;BORDER-BOTTOM: #666666 3px double; BACKGROUND-COLOR: #ffffff">  style="border: 3px double #646464;"(두께가 3이상이여야 효과가 나타남)

<INPUTstyle="BORDER-RIGHT: #eeeeee 3px ridge; BORDER-TOP: #eeeeee 3px ridge;BORDER-LEFT: #eeeeee 3px ridge; WIDTH: 150px; COLOR: #666666;BORDER-BOTTOM: #eeeeee 3px ridge; BACKGROUND-COLOR: #ffffff">  style="border:3px ridge #eeeeee;"
<INPUTstyle="BORDER-RIGHT: #eeeeee 3px groove; BORDER-TOP: #eeeeee 3pxgroove; BORDER-LEFT: #eeeeee 3px groove; WIDTH: 150px; COLOR: #666666;BORDER-BOTTOM: #eeeeee 3px groove; BACKGROUND-COLOR: #ffffff">  style="border:3px groove #eeeeee;"
<INPUTstyle="BORDER-RIGHT: #eeeeee 3px inset; BORDER-TOP: #eeeeee 3px inset;BORDER-LEFT: #eeeeee 3px inset; WIDTH: 150px; COLOR: #666666;BORDER-BOTTOM: #eeeeee 3px inset; BACKGROUND-COLOR: #ffffff">  style="border:3px inset #eeeeee;"
<INPUTstyle="BORDER-RIGHT: #eeeeee 3px outset; BORDER-TOP: #eeeeee 3pxoutset; BORDER-LEFT: #eeeeee 3px outset; WIDTH: 150px; COLOR: #666666;BORDER-BOTTOM: #eeeeee 3px outset; BACKGROUND-COLOR: #ffffff">  style="border:3px outset #eeeeee;"



<INPUTstyle="BORDER-RIGHT: #666666 1px solid; BORDER-TOP: #666666 1px solid;BORDER-LEFT: #666666 1px solid; WIDTH: 150px; COLOR: #666666;BORDER-BOTTOM: #666666 1px solid"onmouseout="this.style.backgroundColor='#ffffff'" name=user_id>
onmouseover="this.style.backgroundColor='353535'" onmouseout="this.style.backgroundColor='#ffffff'"
* onmouseover="this.style.backgroundColor='색상'" 마우스오버시 색지정
* onmouseout="this.style.backgroundColor='색상'" 마우스아웃시 색지정



<INPUTstyle="BORDER-RIGHT: #666666 1px solid; BORDER-TOP: #666666 1px solid;BORDER-LEFT: #666666 1px solid; WIDTH: 150px; COLOR: #666666;BORDER-BOTTOM: #666666 1px solid; BACKGROUND-COLOR: transparent"onmouseout="this.style.backgroundColor='transparent'" name=user_id>
onmouseover="this.style.backgroundColor='353535'"onmouseout="this.style.backgroundColor='transparent'"style="background-color:transparent;"
* transparent 배경색을 투명으로 지정


<INPUTonblur="this.style.background='ffffff'" style="WIDTH: 150px; COLOR:#ffffff" onfocus="this.style.background='353535'" name="" ?>
onfocus="this.style.background='353535'" onblur="this.style.background='ffffff'"
* onfocus 개체에 포커스가 생기는 순간발생
* onblur 개체에 포커스가 사라지는 순간발생


<INPUT style="BORDER-RIGHT: 0px; BORDER-TOP: 0px; BACKGROUND-IMAGE:
url(http://static.naver.com/n/cmn/ico_new07.gif); BORDER-LEFT: 0px; WIDTH: 150px; COLOR: #000000;BORDER-BOTTOM: 0px">

style="background-image:url('이미지');border: 0px;color:000000;"

button에 배경이미지 넣기<INPUT style="BORDER-RIGHT: 0px; BORDER-TOP: 0px; FONT-WEIGHT: bold;BACKGROUND:url(http://blogimgs.naver.com/imgs/section/btn_mybloggo.gif);BORDER-LEFT: 0px;WIDTH:151px;CURSOR:hand;COLOR:#ffffff;BORDER-BOTTOM:0px;HEIGHT:39px"type=button>
STYLE="width:151;height:39;cursor:hand;background:url('http://blogimgs.naver.com/imgs/section/btn_mybloggo.gif');border:0;color:ffffff;font-weight:bold"


테두리 있는 button<INPUT style="BORDER-RIGHT: #000000 1px solid; BORDER-TOP: #0000001px solid; FONT-WEIGHT: bold; BORDER-LEFT: #000000 1px solid; WIDTH:80px; CURSOR: hand; COLOR: #f8f8f8; PADDING-TOP: 2px; BORDER-BOTTOM:#000000 1px solid; HEIGHT: 20px; BACKGROUND-COLOR: #5b5b5b" type=buttonvalue=BUTTON name=mybn>
STYLE="width:80;height:20;padding-top:2px;cursor:hand;background-color:#5B5B5B;border:1 solid#000000;; color:F8F8F8;font-weight:bold"


마우스 오버시 button 색변경<INPUT style="BORDER-RIGHT: #353535 1px solid; BORDER-TOP: #3535351px solid; FONT-WEIGHT: bold; BORDER-LEFT: #353535 1px solid; WIDTH:80px; CURSOR: hand; COLOR: #f8f8f8; PADDING-TOP: 2px; BORDER-BOTTOM:#353535 1px solid; HEIGHT: 20px; BACKGROUND-COLOR: #333333"onmouseout="this.style.backgroundColor = '333333'" type=buttonvalue=BUTTON name=mybn>
STYLE="width:80;height:20;padding-top:2px;cursor:hand;background-color:#333333;border:1 solid#353535;; color:F8F8F8;font-weight:bold" onMouseOver ="this.style.backgroundColor = 'ff0000'" onMouseOut ="this.style.backgroundColor = '333333'"




<TEXTAREAstyle="BORDER-TOP-WIDTH: 0px; BORDER-LEFT-WIDTH: 0px;BORDER-BOTTOM-WIDTH: 0px; FONT: 11px verdana; OVERFLOW: visible; WIDTH:100%; COLOR: #666666; PADDING-TOP: 5px; LETTER-SPACING: -0.1em;TEXT-OVERFLOW: ellipsis; BACKGROUND-COLOR: transparent;BORDER-RIGHT-WIDTH: 0px" readOnly><selectstyle="background:#353535;color:666666;"> <optionvalue="1">선택1</option> <optionvalue="2">선택2</option> <optionvalue="3">선택3</option> </select> </TEXTAREA>



<TEXTAREAstyle="BORDER-TOP-WIDTH: 0px; BORDER-LEFT-WIDTH: 0px;BORDER-BOTTOM-WIDTH: 0px; FONT: 11px verdana; OVERFLOW: visible; WIDTH:100%; COLOR: #666666; PADDING-TOP: 5px; LETTER-SPACING: -0.1em;TEXT-OVERFLOW: ellipsis; BACKGROUND-COLOR: transparent;BORDER-RIGHT-WIDTH: 0px" readOnly><Select > <optionvalue="1">선택1</option> <option value="2"style="background-color: #f0f0f0">선택2</option> <optionvalue="3">선택3</option> <option value="4"style="background-color: #dddddd">선택4</option> <optionvalue="5">선택5</option> </Select> </TEXTAREA>


<TEXTAREA style="BORDER-TOP-WIDTH: 0px; BORDER-LEFT-WIDTH: 0px;BORDER-BOTTOM-WIDTH: 0px; FONT: 11px verdana; OVERFLOW: visible; WIDTH:100%; COLOR: #666666; PADDING-TOP: 5px; LETTER-SPACING: -0.1em;TEXT-OVERFLOW: ellipsis; BACKGROUND-COLOR: transparent;BORDER-RIGHT-WIDTH: 0px" readOnly><Selectstyle="font-size:8pt"> <option value="1"style="color:353535">선택1</option> <option value="2"style="background:eeeeee;color:000000">선택2</option> <optionvalue="3" style="background:aaaaaa;color:f8f8f8">선택3</option><option value="4"style="background:353535;color:ffffff">선택4</option>& lt;/Select> </TEXTAREA>


[textarea 스크롤바색상바꾸기]
<TEXTAREAstyle="SCROLLBAR-FACE-COLOR: #353535; SCROLLBAR-SHADOW-COLOR: #353535;SCROLLBAR-ARROW-COLOR: #dddddd; SCROLLBAR-BASE-COLOR: #000000" rows=5cols=60> </TEXTAREA>
style="scrollbar-base-color:#000000;scrollbar-shadow-color:#353535;scrollbar-arrow-color: #dddddd;scrollbar-face-color: #353535;"


[textarea 라인없이 표현하기]
<TEXTAREAstyle="BORDER-TOP-WIDTH: 0px; BORDER-LEFT-WIDTH: 0px;BORDER-BOTTOM-WIDTH: 0px; COLOR: #ffffff; BACKGROUND-COLOR: #f8f8f8;BORDER-RIGHT-WIDTH: 0px" rows=5 cols=60></TEXTAREA>
style="background-color:#f8f8f8;border-width:0;color:ffffff;"



[textarea 안에 배경이미지 넣기]
<TEXTAREA style="BACKGROUND-IMAGE: url(http://blogimgs.naver.com/imgs/lg_naver01.gif)" rows=4 cols=45></TEXTAREA>
style="background-images:url('img.jpg');"
style="background-image:url('이미지'); background-repeat:no-repeat; background-position:50% 50%;"


[textarea 스크롤바 안생기게 하기]
<TEXTAREA style="OVERFLOW: hidden" rows=5 cols=60></TEXTAREA>
style="overflow:hidden" (필요시에만 생기게 하려면 overflow:auto)


[textarea width,height 설정하기]
<TEXTAREA style="WIDTH: 100%; HEIGHT: 50px"></TEXTAREA>
style="width:100%;height:50px;"


[textarea 한/영키를 누루지 않고 한글/영어 언어선택]
<TEXTAREAstyle="IME-MODE: inactive" rows=5 cols=30 ]>영어</TEXTAREA><TEXTAREA style="IME-MODE: active" rows=5cols=30>한글</TEXTAREA>
* style="ime-mode:inactive;"(영어)
* style="ime-mode:active;"(한글)


[textarea내의 내용 자동선택]
<TEXTAREA onfocus="this.select()" rows="5" cols="60">textarea내의 내용 자동선택</TEXTAREA>
onMouseOver="this.focus()" onFocus="this.select()"


[textarea 자동으로 늘리기]
<TEXTAREAstyle="BORDER-RIGHT: #666666 1px solid; BORDER-TOP: #666666 1px solid;OVERFLOW: visible; BORDER-LEFT: #666666 1px solid; WIDTH: 100%;BORDER-BOTTOM: #666666 1px solid; HEIGHT: 50px; TEXT-OVERFLOW:ellipsis" name=memo> </TEXTAREA>style="width:100%;height:50;border:1 solid#333333;overflow:visible;text-overflow:ellipsis;"

8/31/2010

body 에 넣은 ",',엔터,우클릭 막기

oncontextmenu="return false" onkeydown="if (event.keyCode==222 ||event.keyCode==17 || (window.event.ctrlKey && (window.event.keyCode == 67  || window.event.keyCode == 86) ) ) return false;"

8/12/2010

엔터처리

onkeyup="javascript:if(event.keyCode == 13){js_select();}">

8/06/2010

java 단위별로 콤마넣기

    public String toCommifyString(String sourceNum){
       if(sourceNum.isEmpty())return "0";
       if(sourceNum.length() <= 3) return sourceNum;       
          
        double num = Double.parseDouble(sourceNum);
        DecimalFormat df = new DecimalFormat("#,###");       
      
       return df.format(num).toString();
   }

8/02/2010

int to string / string to int

farpoint spread 6.0 사용?

어디에서 인가 복사한 글..

▶ Far Point Spread Designer 사용법

1. Scroll Bars
◎ Settings
- None
- Horizontal
- Vertical
- Both
◎Show Only If Needed : 필요할 때만 보여주기
◎Align at last Row and Column : 마지막 로우와 컬럼에서 멈춘다.(체크 안되면 계속 움직인다.)
◎Box Reflects Max Row : 별 영향 없슴.
2. GridLines
◎ Settings
- Show Vertical Lines : 수직라인 보이기
- Show Horizontal Lines : 수평라인 보이기
- Make Grid Lines Solid : 라인이 흐릿하게 보인다.
◎ Back Color Style ---> Back Color가 있을때,
- Over Grid : Cell에 Back Color가 있을때 라인이 안 보인다.
- Under Grid : Back Color가 있어도 라인이 보인다.
- Over Horizontal Lines Only : 수직선만 보인다.
- Over Vertical Lines Only : 수평선만 보인다.

3. Border Lines
◎ Type
- None
- Set Border for Selected Block : 선택한 셀에 선명한 선이 나타난다.
- Set Border for Each Cell : 셀에 대한 오른쪽,왼쪽,위,아래선을 선택할 수 있다.
◎ Style : 라인이 있을때
- Fine : 선을 좀더 선명하게 보여준다.
None
Solid
Dash
Dot
Dash Dot
Dash Dot Dash
4. Cell Color
◎ Property
- BackColor : 바탕색깔
- ForeColor : 글자색깔
5. SpreadSheet Environment
(1) General
- Make Edit Mode Permanent : 셀을 클릭하면 바로 Edit 모드로 들어간다.
- Replace Existing Text : 셀을 선택하고 Edit하면 기존에 글자들이 지워지면서 새롭게
작성된다. (선택안되었을때: 기존글자 뒤에서부터 작성된다.)
- Handle ClipBoard Keys : 기본선택
- Retain Selected Block : 기본선택
- Protect Locked Cells : 기본선택
- Multiple Block Selections
- On Focus Set Cell to Cursor
- Use Arrow Keys to Exit Edit
- Cell Overflow : 문자열이 셀의 길이를 벗어날때 다음 셀까지 합쳐서 보여준다.
- Beep off
- Cell DragDrop
- Hide Border : 스프레드(전체) 외곽의 보더를 감춘다.
- Process Tabkey : 탭키가 가능해진다.
- Autosize On
- Calculate Formulas : 기본선택
- Custom Formulars
- Formula Sync : 기본선택
(2) SheetMode
- Normal : 기본선택
- ReadOnly : 읽기만 가능(코딩으로 데이터를 넣을수는 있다.)
- RowMode : 한 Row 전체가 선택되어진다.(읽기/쓰기 가능)
- Single Selection : ReadOnly + RowMode
- Multiple Selection : ReadOnly + RowMode + 클릭할때마다 계속 선택되어진다.
- Extend Selection : ReadOnly + RowMode + Shift,Ctrl 키로 여러 Row를 선택할수 있다.
(3) Block Mode
- Sheet Mode를 선택할때 마다 최적 상태로 세팅 해준다.(건드리지 않는게 좋다.)
(4) Enter Key
- 셀안에서 엔터키를 칠때 셀이 다음에 어디로 이동될지를 설정한다.
6. Headers
--> Row와 Col의 Header Title을 바꿀때 사용한다.
◎ Display Headers : Header 보이기
◎ User Resize : 셀 사이즈 조절 가능

7. Columns And Rows
--> Row와 Col의 갯수를 설정할때 사용한다.
◎ Max Cols/Rows : 최대 Col/Row 수
◎ Resizeable : 셀 크기조절 가능
8. SpreadSheet Colors
◎ Property
- GrayAreaColor : 스프레드 여백 색깔
- GridColor : Grid Line Color
- ShadowColor : Header 채우기 색깔
- ShadowDark : Header의 외곽선 색깔
- ShadowText : Header의 글자색
9. Virtual Mode
◎ Virtual Scrollbar
- UserSpecial Scrollbar : 페이지 단위로 스크롤, 처음과 끝 보여주기 등의 스크롤바
10. Go To Run-Time Mode
-- > 실행 시키 화면과 같은 효과
11. Button
◎ Text : Button에 글자 넣기
◎ Style
- Push Button : 일반적이 버튼
- Two State : 클릭하면 들어가고 또 다시 클릭하면 튀어나오는 버튼
◎ Color : 버튼 색깔 설정
◎ Picture : 버튼에 그림 넣기
12. Check Box
◎ TextLeft : 글자가 왼쪽에 위치
13. Combo Box
◎ Text에 글자를 넣고 Add/Delete/Update로 Item을 추가/삭제/수정 한다.
◎ Editable : 실행시 Item에 수정 가능
14. Date
--> 데이트형 Edit Mask
◎ Show Cuntury : 년도를 4자리로 보이기
◎ Spin Button : 스핀버튼 보이기
15. Edit
◎ Char Set
- All Char : 모든 문자 허용
- Alpha : 알파벳만 허용
- Alphanumeric : 알파벳과 숫자만 허용
- Numeric : 숫자만 허용
◎ Text Align : 문자 정렬
◎ Char Case : 대/소문자 설정
◎ MultiLine : MultiLine 허용
◎ PassWord : *****문자로 보여주기
◎ Length : 최대 문자수
16. Float
--> 실수형 Mask Edit
◎ Int Digits : 정수 자릿수
◎ Dec Digits : 소수점 아래 자릿수
◎ Money : 금액 단위 표시 ($,\)
◎ Separator : 1000단위 분리자 (,)
17. Integer
--> 정수형 Mask Edit
18. Label(Static) : Label Box
19. Mask(Pic) : Edit Mask
20. Picture : Picture Box
21. Time
--> 시간을 나타내는 Mask Edit

▶ Far Point Spread Sheet Action 정리

Value
Constant
Description
Remark

0
SS_ACTION_ACTIVE_CELL
Activate Cell
모든 셀을 활성화 시키면서 지정한 셀로 이동한다.

1
SS_ACTION_GOTO_CELL
Go To
지정한 셀이 최상위에 위치한다.

2
SS_ACTION_SELECT_BLOCK
Select Block
지정한 셀을 블록화 시킨다.

3
SS_ACTION_CLEAR
Clear
지정한 셀의 텍스트를 지운다.

4
SS_ACTION_DELETE_COL
Delete Col
지정한 컬럼 삭제

5
SS_ACTION_DELETE_ROW
Delete Row
지정한 로우 삭제

6
SS_ACTION_INSERT_COL
Insert Col
지정한 컬럼 삽입

7
SS_ACTION_INSERT_ROW
Insert Row
지정한 로우 삽입

8
SS_ACTION_LOAD_SPREAD_SHEET
Load
데이터 파일을 로드한다.

9
SS_ACTION_SAVE_ALL
Save All
현재 스프레드 시트를 화일로 저장한다.

10
SS_ACTION_SAVE_VALUES
Save Values
현재 스프레드 시트의 데이터중 텍스트만 파일로 저장한다.

11
SS_ACTION_RECALC
Recalculate
모든 Formular의 재계산을 수행한다.

12
SS_ACTION_CLEAR_TEXT
Clear Text
스프레드 시트의 모든 텍스트를 지운다.

13
SS_ACTION_PRINT
Print
스프레드 시트를 프린터로 출력한다.

14
SS_ACTION_DESELECT_BLOCK
Deselect Block
여러 셀을 선택했을때 블록을 해제한다.

15
SS_ACTION_DSAVE
Data Save
IDK

16
SS_ACTION_SET_CELL_BORDER
Set Border
셀의 Border를 설정한다.

17
SS_ACTION_ADD_MULTISELBLOCK
Add MultiSel Blocks
지정한 셀들을 블록 처리한다.

18
SS_ACTION_GET_MULTI_SELECTION
Get MultiSel Blocks
IDK

19
SS_ACTION_COPY_RANGE
Copy Range
지정한 범위를 Copy해서 목적지에 뿌려준다.

20
SS_ACTION_MOVE_RANGE
Move Range
지정한 범위를 잘라내서 목적지에 뿌려준다.

21
SS_ACTION_SWAP_RANGE
Swap Range
지정한 범위와 목적지의 데이터를 교환한다.

22
SS_ACTION_CLIPBOARD_COPY
Clipboard Copy
마우스로 지정한 블록의 데이터를 복사해서 클립보드에 저장한다.

23
SS_ACTION_CLIPBOARD_CUT
Clipboard Cut
마우스로 지정한 블록의 데이터를 잘라내서 클립보드에 저장한다.

24
SS_ACTION_CLIPBOARD_PASTE
Clipboard Paste
클립보드에 저장된 데이터를 지정한 블록안에 붙여넣는다.

25
SS_ACTION_SORT
Sort
데이터를 소트 시킨다.

26
SS_ACTION_COMBO_CLEAR
Combo Clear
콤보박스의 Item을 Clear 시킨다.

27
SS_ACTION_COMBO_REMOVE
Combo Remove String
콤보박스의 Item을 삭제 한다.

28
SS_ACTION_RESET
Reset
스프레드 시트를 Reset 시킨다.

29
SS_ACTION_SEL_MODE_CLEAR
Select Mode Clear
Multiple Selection, Extend Selection Mode

30
SS_ACTION_VMODE_REFRESH
Vrefresh Buffer
IDK

32
SS_ACTION_SMARTPRINT
Smart Print
스프레드 시트를 프린터로 출력한다.

7/26/2010

farpoint spread sheet 에서 콤보박스 사용하기..

            out.write(btfs.SpreadStr(cnt,    2,    2,    8,    vData[i][1])); // 8 이 셀렉트박스로 사용한다는것

            %>
                dss.TypeComboBoxList="<%=vData[i][1]%>"+Chr(9)+"people"+Chr(9)+"why?"
            <%
            out.write("dss.TypeComboBoxMaxDrop = 3\n"); // 몇줄을 보여줄까?
            out.write("dss.TypeComboBoxCurSel = 0\n"); // 초기 설정 값은 0번째

시트에 값 넣는 부분에서 이렇게 해주면 된다..

물론.. 이쪽에서만 사용 가능한 방법? 이겠지만;

jsp 상에서 VB script 를 이용해서..

7/16/2010

desire 리뷰..

http://review.cetizen.com/HTCDesire/view/3/4776/copy/20/11594/review

나도 요즘 잘 쓰고 있지~

오늘(15일) 유료 마켓도 풀렸겠다~

7/05/2010

virtual host

conf 파일의 아래쪽 virtual host 부분의 주석을 없애주고,
# Virtual hosts
Include conf/extra/httpd-vhosts.conf

extra 폴더에 있는 vhosts.conf 를 수정해 준다.

httpd.conf 파일에
Listen 81
Listen 99
NameVirtualHost *

위와같이 포트번호를 나눠주고..

vhosts.conf 파일에 들어가서

<VirtualHost *:8099>
    ServerAdmin webmaster@dummy-host2.LBS
    DocumentRoot "D:\MSM\resin-pro-3.1.9\webapps\MSM"
    ServerName 211.40.33.44
    ErrorLog "logs/dummy-host2.LBS-error.log"
    CustomLog "logs/dummy-host2.LBS-access.log" common
    <Directory "D:/MSM/resin-pro-3.1.9/webapps/MSM">
    AllowOverride none
    Options none
    Order allow,deny
    Allow from all
    </directory>
    <IfModule mod_caucho.dll>
        ResinConfigServer localhost 6805
        Cauchostatus yes
        </IfModule>
</VirtualHost>



관련된 부분을 수정해준다.. 8099로 들어오면, 루트 디렉토리는 저족으로 하고, 해당 디렉토리의 권한, 모듈 설정등을 넣어준다. 위의 경우 resin 에 필요한 6805 포트를 연결해 놓은것..


6/11/2010

플래시 액션스크립트 할때는..

항상.. 인스턴스 명을 확인하고 만들어야 뻘짓 하지 않고 끝낼 수 있다.

문법들은 생략...

만들면서 알아가도록 하자..

3D 쪽을 알아봐야되는데 말이지;;

맥스나 페이퍼를 해야되나?

플래시 액션스크립트 기초정보

----------------------------------------------------------------------------
// .....       주석 기호 
/* ..... */    주석 기호 
----------------------------------------------------------------------------
\r        // 리턴 코드  (ASC 13)
\n        // 줄바꿈 코드 (ASC 10)
\r\n      // 줄바꿈 코드  (2줄)
\t        // Tab 코드 (ASC 9)
\b        // Backspce 코드 (ASC 8)
&         // text 파일 데이타 구분 코드
----------------------------------------------------------------------------
산 술연산자  +, -, *, /, %                 //  %  나머지를 구한다
대입연산자  =, +=, -=, *=, /=, %=         //  i+=4 와  i=i+4 는 같다
증감연산자  ++, --                        //  i++  와   i=i+1 는 같다 
비교연산자  ==, !=, >, <, >=, <=          //  !=  '같지않다' 로 해석
비교연산자  ===                           //  숫자 와 문자 구분
a = 5;    b = "5";                        // 숫자 5 와 문자 "5"
(a == b)                                  //  숫자 5 와 문자 "5"  는 같다 (true)
(a === b)                                 //  숫자 5 와 문자 "5" 는 틀리다 (false)
논리연산자  &&, ||, !                     //  그리고(AND), 또는(OR), 아니면(NOT)
조건연산자  ?    ( a ) ? b : c ;         //  a 조건이 맞으면 b 틀리면 c 실행
x=5;  y=10;  z=(x<6) ? x: y;   trace (z); //  z 은 5 이다
문자연산자  eq  ne  not  or  add          //  eq(==) ne(!=) not(!) or(||) add(+ 문자열의 연결)
( )                                       //  연산의 순서를 정한다
[ ]                                       //  배열을 지정한다
" "                                       //  문자를 지정한다
a=1+2; trace(a);                         //  연산 결과 출력.  결과는 3
aaa=1;  set("ccc", aaa );  trace(ccc);    //  변수에 값을 지정.  결과는 1
aaa=1;  set("ccc", "aaa");  trace(ccc);   //  변수에 값을 지정.  결과는 aaa
set("ooo", getProperty ("ppp", _x ));     //  ppp x 좌표를  ooo 에 지정.
----------------------------------------------------------------------------
for (a=1; a<=10; a++)  { trace("a="+a); };             //  for  반복문
for (i=1; i<=120;  i+=12) { continue; };               //  for step 반복문
while(true) {  if(a == 0) { break; }; };               //  while  반복문
do { if(a == 0) { break; }; };  while(true);           //  do 반복문
if((n == 0) || (n >= 5)  &&  (n <= 55)  !(n=15)) {     //  if 조건문
  gotoAndPlay(1);
} else if (n == 2) {
 gotoAndPlay(2);
} else {
  gotoAndPlay(3);
};
num_ch = 3;                                             //  switch 조건문
switch (num_ch) {                                               
      case 1:    trace ( " case 1 tested true " );  break;
      case 2:    trace ( " case 2 tested true " );  break;
      default:    trace ( " no case tested true " );
};
----------------------------------------------------------------------------
function sumnumber(a,b,c) {  return(aaa= a+b+c); };    // 함수
sumnumber(1,2,3);
trace(aaa);
----------------------------------------------------------------------------
Math.abs(-1)              //  절대값.   결과는 1
Math.sin(1)               //  sin 값.   결과는 0.841470984807897
Math.cos(1)               //  cos 값.   결과는 0.54030230586814
Math.tan(1)               //  tan 값.   결과는 1.5574077246549
Math.log(2)               //  log 값.   결과는 0.693147180559945
Math.exp(1)               //  지수 값.    결과는 2.71828182845905
Math.sqrt(9)              //  제곱근 값.    결과는 3
Math.pow(2 , 4)           //  거듭제곱 값.    결과는 16
Math.ceil(1.1)            //  가까운 정수로 올림 값.    결과는 2
Math.ceil(1.5)            //  가까운 정수로 올림 값.   결과는 2
Math.floor(1.2)           //  가까운 정수로 내림 값.    결과는 1
Math.floor(1.7)           //  가까운 정수로 내림 값.    결과는 1
Math.round(1.2)           //  가까운 정수로 반올림 값.    결과는 1
Math.round(1.5)           //  가까운 정수로 반올림 값.   결과는 2
Math.max(1 , 2)           //  두 정수 중 큰 정수값.    결과는 2
Math.min(1 , 2)           //  두 정수 중 작은 정수값.    결과는 1
int(1.12 );               //  수치를 정수화.   결과는 1    
int(1.82 );               //  수치를 정수화.   결과는 1    
parseInt("3.2");          //  문자열을 정수화.  결과는 3    
parseInt("3.7");          //  문자열을 정수화.  결과는 3    
parseInt("5abc");         //  문자열을 정수화.  결과는 5
parseInt("abc5");         //  문자열을 정수화.  결과는 NaN    
parseInt("3E8", 16);      //  16 진수로 변환.   결과는 1000
parseInt("777", 8);       //  8 진수로 변환.   결과는 511
parseInt("1010", 2);      //  2 진수로 변환.   결과는 10
parseFloat("2")           // 문자열을 부동점 숫자로 변환.  결과는 2
parseFloat("2.4")         // 문자열을 부동점 숫자로 변환.  결과는 2.4
parseFloat("2.6abc")      // 문자열을 부동점 숫자로 변환.  결과는 2.6
Number("11")              //  문자열을 숫자로 변환.   결과는 11
Number("12.34")           //  문자열을 숫자로 변환.   결과는 12.34
Number("12.34abc")        //  문자열을 숫자로 변환.   결과는 NaN
sss = 123;  uuu = sss.toString();      // 숫자를 문자로변환.  결과는 123
ord("abc");                            // ASCII 값.   결과는 97
s = "abc";   sss = s.charCodeAt(0);    //  1번째 ASCII 값 .   결과는 97
s = "abc";   sss = s.charCodeAt(1);    //  2번째 ASCII 값.    결과는 98
chr(65);                               //  ASCII 코드를 문자화.  결과는 A
String.fromCharCode(64,65,66);         //  ASCII 코드를 문자화.  결과는 @AB
Math.random();                         // 난수 발생.  결과는 0 - 1 사이의 소숫점 포함한 값
random(5);                             // 난수 발생.  결과는 0,1,2,3,4 중 하나
----------------------------------------------------------------------------
// delete 변수 또는 객체 ;             // 변수를 삭제  (var 로 선언된 변수는 삭제할 수 없다)
account = 1;   trace (account) ;                      // 결과는 1 
account = 1;   delete account;    trace (account);    // 결과는 undefined
delete onEnterFrame;                                  // 반복 실행 중지
----------------------------------------------------------------------------
typeof( );            // String, Number, MovieClip, Object, Boolean, Function 여부를 지정
trace (typeof(1));    // 결과는 Number
trace (typeof("1"));  // 결과는 String
trace (typeof(aaa));  // aaa가 무비클립 이라면  결과는 MovieClip
----------------------------------------------------------------------------
isFinite( );            // 숫자가 유한수이면 true 무한수거나 음의 무한대이면 false
trace (isFinite(aaa));  // aaa 값이 NaN 이라면 결과는 false
----------------------------------------------------------------------------
Mouse.show();           // 마우스 보임
Mouse.hide();           // 마우스 감춤
myClip.onMouseDown = function () {trace (" depth 무시"); };     // 마우스 누를 때
myClip.onMouseUp = function () {trace ("depth 무시"); };        // 마우스 눌렀다 놓을 때
myClip.onMouseMove = function () { trace ("depth 무시"); };     // 마우스 이동할 때
myClip.onPress = function () { trace ("depth 적용"); };         // 마우스 누를 때
myClip.onRelease = function () { trace ("depth 적용 "); };      // 마우스 눌렀다 놓을 때
myClip.onReleaseOutside = function () { trace ("Outside"); };   // 마우스 나가서 놓을 때
myClip.onRollOver = function () { trace ("Over called"); };     // 마우스 오버 때
myClip.onRollOut = function () { trace ("Out called"); };       // 마우스 아웃 때
----------------------------------------------------------------------------
// 단추무비클립 클릭후 액션 스크립트를 넣는다
on (press){           }  // 마우스 버튼을 누를 때   };  x  }  o
on (release){         }  // 마우스 버튼을 눌렀다 뗄 때
on (releaseOutside){  }  // 마우스 버튼을 누르고 나가서 뗄 때
on (rollOver){        } // 마우스 포인트가 위로 올라올 때
on (rollOut){         }  // 마우스 포인트가 밖으로 나갈 때
on (dragOver){        }  // 누른 채로 밖으로 나갔다가 다시 들어올 때
on (dragOut){         }  // 마우스버튼을 누르고 바깥으로 드래그할 때
on (keyPress){        }  // 지정한 키를 누를 때
----------------------------------------------------------------------------
// 무비클립 클릭후 액션 스크립트를 넣는다
onClipEvent (load) {            }  // 시작 될때  };  x  }  o  
onClipEvent (unload) {          }  // 제거 될때
onClipEvent (enterFrame) {      }  // 트리거 될때
onClipEvent (mouseMove) {       }  // 마우스가 이동할 때
onClipEvent (mouseDown) {       }  // 마우스 클릭 시
onClipEvent (mouseUp) {         }  // 마우스 클릭 후
onClipEvent (keyDown) {         }  // 키를 누를 때
onClipEvent (keyUp) {           }  // 키를 눌렀다 놓을 때
onClipEvent (data) {            }  // loadVariables 또는 loadMovie 액션에서 데이터가 수신될 때
----------------------------------------------------------------------------
TextField.onChanged = function () { trace ("onChanged called"); };
// 텍스트 필드의 내용이 변경될 때
TextField.onSetFocus = function () { trace ("onSetFocus called"); };
// 텍스트 필드의 내용 부분에 마우스가 클릭 될 때
TextField.onKillFocus = function () { trace ("onKillFocus called"); };
// 텍스트 필드의 내용 바깥 부분에 마우스가 클릭 될 때
TextField.onScroller = function () { trace ("onScroller called"); };
// 텍스트 필드의 내용이 스크롤 될 때
----------------------------------------------------------------------------
myMovieClip.onData = function () { trace ("onData called"); }; 
// 무비 클립이 loadVariables 또는 loadMovie 호출로부터 데이터를 받을 때
myMovieClip.onLoad =  function () { trace ("onLoad called"); }; 
// 무비 클립이 load 호출로부터 데이터를 받을 때
myMovieClip.onUnLoad =  function () { trace ("onUnLoad called"); }; 
// 무비 클립이 Unload 때
myMovieClip.stop()  
// 작업 중지
----------------------------------------------------------------------------
myDate = new Date();                               // 날짜 로드
myDate = new Date (년,월,일,시,분,초);             // 날짜 지정
yyyy = (myDate.getFullYear() + "-" + (myDate.getMonth() + 1) + "-" + myDate.getDate());
tttt = (myDate.getHours()+ " :" + myDate.getMinutes() + " :" +myDate.getSeconds());
----------------------------------------------------------------------------
_root.onEnterFrame = function() {   };             // 메인화면에서 프레임 반복
onEnterFrame = function() {   };                   // 심볼화면에서 프레임 반복
----------------------------------------------------------------------------
tmtm = getTimer();          
onEnterFrame = function() {
  if ( (getTimer()-tmtm) >= 500 ) { tmtm=getTimer(); trace (tmtm); };   // 0.5초후 반복실행
  if ( (getTimer()-tmtm) >= 1000 ) { tmtm=getTimer(); trace (tmtm); };  // 1초후 반복실행
  if ( (getTimer()-tmtm) >= 2000 ) { tmtm=getTimer(); trace (tmtm); };  // 2초후 반복실행
};
----------------------------------------------------------------------------
onEnterFrame = function() {                                
   nr += 1;  if (nr > 5 )  {  delete  onEnterFrame;  };           // 5번 반복실행후 중지
   trace (nr);
};
----------------------------------------------------------------------------
createTextField ("ins", 1, 100, 100, 50, 50)
ins.border = true;
function callback() {
   ins._x += 5;
   if ( ins._x > 400 ) { clearInterval( intervalID );  };      // 중지 (clearInterval)
}
var intervalID;
intervalID = setInterval( callback, 100 );             //  0.1초후 반복실행 (setInterval)
----------------------------------------------------------------------------
#include "script.as"         // script.as 파일 넣기 (액션 스크립트 txt 파일)
----------------------------------------------------------------------------
System.useCodepage = true;   // 한글 깨짐 방지
trace(System.capabilities.language)          // Flash Player가 지원하는 언어. 결과는 ko
trace(System.capabilities.hasVideoEncoder)   // 지원되는 비디오 인코더. 결과는 true, false.
trace(System.capabilities.hasAudioEncoder )  // 지원되는 오디오 인코더. 결과는 true, false.
trace(System.capabilities.hasAudio)          // 오디오 성능이 있는지 여부. 결과는 true, false.
trace(System.capabilities.hasMP3)            // MP3 디코더가 있는지 여부. 결과는 true, false.
----------------------------------------------------------------------------
escape("abc 가나다");         // URL에 사용하기 위해 인코딩.
// System.useCodePage= true; 일때 결과는 abc%B0%A1%B3%AA%B4%D9
// System.useCodePage= false; 일때 결과는 abc%EA%B0%80%EB%82%98%EB%8B%A4
----------------------------------------------------------------------------
trace(targetPath(this));     // 대상 패스를 반환.  결과는 _level0.instance1 로 표시
trace(this.valueOf());       // 결과는 _level0 로 표시
----------------------------------------------------------------------------
trace(this.getBytesLoaded()); // 무비클립의 로드된 바이트 수를 알려준다.
trace(this.getBytesTotal());   // 무비클립의 전체용량 바이트 수를 알려준다.
----------------------------------------------------------------------------
getURL("C:/")                                          // 탐색기 열기
getURL("C:/Windows/NOTEPAD.EXE");   };                 // 메모장 열기
getURL("C:/Program Files/Accessories/WORDPAD.EXE");    // 워드패드 열기
getURL("C:/Program Files/Accessories/MSPAINT.EXE");    // 그림판 열기
getURL("C:/Windows/CALC.EXE");                         // 계산기 열기
getURL ("aaa.exe");                                    // aaa.exe 파일 열기 (message)
getURL ("aaa.txt", "_self");                           // aaa.txt 파일 열기
getURL ("movie.html", "_self");                        // movie.html 파일 열기
getURL ("http://www", "_blank");                       // http://www 를 새로운 창으로 열기
----------------------------------------------------------------------------
Stage.showMenu = "true";        // 스크린 메뉴 보임
Stage.showMenu = "false";       // 스크린 메뉴 감춤 
Stage.scaleMode = "noScale";    // 화면의 사이즈를 고정
Stage.align = "TL";             // 화면의 정렬을 T(위) L(왼쪽)
           //  "T" 위 가운데   "B" 아래 가운데    "L" 가운데 왼쪽    "R" 가운데 오른쪽
           //  "TL" 위쪽 왼쪽   "TR" 위쪽 오른쪽   "BL" 아래쪽 왼쪽   "BR" 아래쪽 오른쪽
Stage.height      // 픽셀로 표시된 스테이지의 높이
Stage.width       // 픽셀로 표시된 스테이지의 넓이
----------------------------------------------------------------------------
_root.createEmptyMovieClip("box",1);      // 스테이지 테두리 주기
with (_root.box) {  moveto(1, 1);   linestyle(10, 0x00cc00, 100);
    lineto(stage.width, 1);     lineto(stage.width, stage.height);
    lineto(1, stage.height);    lineto(1, 1);   };
----------------------------------------------------------------------------
fscommand("showmenu", true);      // 스크린 메뉴 보임
fscommand("showmenu", false);     // 스크린 메뉴 감춤
fscommand("allowscale", true);    // 스크린 크기에 따라 무비의 크기도 변함
fscommand("allowscale", false);   // 스크린 크기에 따라 무비의 크기도 안변함
fscommand("fullscreen", true);   // 풀 스크린 (esc키 누르면 해제)
fscommand("fullscreen", false);   // 풀 스크린을 원래의 크기로 만든다
fscommand("trapallkeys", true);   // 키보드 키 사용할 수 없음 (풀 스크린 일때 esc키 먹통)
fscommand("trapallkeys", false);  // 키보드 키 사용할 수 있음
fscommand("quit");                // 스크린 닫기
fscommand ("exec", "a.exe");      // a.exe 파일 실행 (no message)
   플래시 무비(exe) 가 위치하는 폴더안에 fscommand 라는 하위 폴더를 만들고
   fscommand 디렉토리에  a.exe 가 있을때 플래시 무비(exe)를 실행하면 a.exe파일 실행
----------------------------------------------------------------------------
// getURL 로 javascript 사용하기
var hello = "Hello, World";
getURL("javascript:alert(\" "+ hello + "  \")");   // 메세지 띄우기
getURL("javascript:window.self.close()");          // 윈도우창 닫기
getURL("javascript:window.external.AddFavorite('http://',' 가')" );    //즐겨찾기 추가
----------------------------------------------------------------------------
// fscommand 로 javascript 사용하기
1.  fscommand ("messagebox", "This is a Flash.");   // aaa.swf flash script
2.  파일메뉴 - 제작설정 - 포맷 (HTML체크) - HTML (템플릿: with FSCommand 체크)
3.  파일메뉴 - 제작 (파일명은 aaa.swf) -  aaa.html 파일이 디렉토리에 만들어 진다
4.  aaa.html 파일을 열고  function aaa_DoFSCommand(command, args) {  아래에
      if (command == "messagebox") {  alert(args);  };   을 적고 저장 한다
5.  aaa.html 실행 (실행후 제작설정 해제)
----------------------------------------------------------------------------
// fscommand 로 javascript 의 변수값 불러오기
1. fscommand ("search", TextFieldvar);     // aaa.swf flash script
2. if (command == "search") {              // aaa.html script
       EEEfind = "FFFFFFFF";
       window.document.aaa.SetVariable("TextFieldvar", EEEfind) ;
       return TextFieldvar;
    };
3. aaa.html 실행
----------------------------------------------------------------------------
_root.loadMovie("a.swf");            // swf 파일 불러오기
_root.bbb.loadMovie("a.swf")         // swf 를 메인에 있는 bbb무비클립인스턴스에 불러오기
_root.loadMovie("a.swf", 1);         // swf 를 레벨1로 불러오기 (2 는 1를  screen over)
_root.loadMovie("aaa.jpg");          // jpg 파일 불러오기
_root.bbb.loadMovie("aaa.jpg");      // jpg 파일을 메인에 있는 bbb무비클립인스턴스에 불러오기
unloadMovie (1);                     // 레벨 1에 로드된 무비를 언로드
unloadMovie ("a.swf");               // 현재 무비에 로드된 a.swf 무비를 언로드
_root.bbb.unloadMovie();             // 메인 타임라인의 bbb 무비클립에 로드된 무비를 언로드
this["bbb"].unloadMovie();           // 현재 타임라인의 bbb 무비클립에 로드된 무비를 언로드
sss.bbb.unloadMovie();               // sss 심볼 타임라인의 bbb 무비클립에 로드된 무비를 언로드
----------------------------------------------------------------------------
button.onPress = function() { _root.loadMovie("aaa.swf"); }     // aaa.swf 실행중 초기화 하기
----------------------------------------------------------------------------
_root["ball_"+counter]._x = 11;       //  메인 화면의 클립 좌표
this["ball_"+counter]._x = 11;        //  현재 화면의 클립 좌표
aaa["ball_"+counter]._x = 11;         //  aaa 심볼 화면의 클립 좌표
----------------------------------------------------------------------------
this.createEmptyMovieClip("aaa", 1);             //  무비클립 생성 (2 는 1를 screen over)
this.duplicateMovieClip (aaa, bbb, 1);           //  aaa 무비클립  bbb 로 복사
this.bbb.removeMovieClip();                      //  bbb 무비클립 삭제
myClip._visible = true;                          //  클립 보임
myClip._visible = false;                         //  클립 감춤
myClip.swapDepths(100);                          // 클립 깊이 100 으로 지정 (2 는 1를 screen over)
myClip.swapDepths(otherClip);                    //  클립 깊이 otherClip 과 바꿈
for (i=1; i<=360; i++) {                        //  클립 복사
     duplicateMovieClip (ins1, "mc"+i, i);
     setProperty ("mc"+i, _x, random(300));
     setProperty ("mc"+i, _y, random(300));
     setProperty ("mc"+i, _alpha, random(300));
     setProperty ("mc"+i, _xscale, 150);
    setProperty ("mc"+i, _yscale, 150);
};  
for (i=1; i<=360; i++)  {                        //  클립 복사
     duplicateMovieClip (ins1, "mc"+i, i);
     this["mc" + i]._x = i;
     this["mc" + i]._y = i;
};  
for (i=1; i<=50; i++)  {                          // 클립 이동
      this["mc_"+i]._x += 10;
      this["mc_"+i]._y += 10;
}; 
for (i=1; i<=360; i++)  {                         // 클립 삭제
     this["mc" + i].removeMovieClip ();
}; 
----------------------------------------------------------------------------
setProperty ("mv", _x, 150);           // mv 무비클립 x좌표 속성 변경
myMovieX = getProperty( mv, _x);       // mv 무비클립 x좌표 속성 읽기
trace(myMovieX);
----------------------------------------------------------------------------
_alpha              알파값(%)
_currentframe       현재재생중인 프레임(#)
_droptarget         드래그 앤드드롭 할때 놓는 타깃위치(name)
_framesloaded       로드된 프레임수(#)
_height             높이(#)
_name               인스턴스(string)
_rotation           회전값(#)
_soundbuftime       사운드버퍼링 시간(기본값 5초:#)
_totalframes        총프레임수(#)
_url                다운로드한 URL(string)
_visible            보인다,안보인다 (true,false)
_width              가로길이(#)
_x                  x좌표(#)
_y                  y좌표(#)
_xmouse             마우스x좌표(#)
_ymouse             마우스y좌표(#)
_xscale             x배율(%)
_yscale             y배율(%)
----------------------------------------------------------------------------
_root.a.play;                    //  메인에 있는 a무비클립  프레임 재생
_root.a.stop;                    //  메인에 있는 a무비클립  프레임 중지
play();                          // stop으로 정지된 현재타임라인의 프레임 재생
stop();                          //  현재타임라인의 프레임 중지
gotoAndPlay(1);                  //  현재 Scene의 1프레임 재생
gotoAndPlay("a");                //  현재 Scene의 Label명 a 재생
gotoAndPlay("Scene 2", "c");     //  Scene 2의 Label명 c 재생
a.gotoAndPlay(1);                //  a무비클립의 1프레임 재생
gotoAndStop(1);                  //  현재 Scene의 1프레임 중지
nextScene();                     //  다음 장면의 프레임 1로 보내고 중지
prevSecne();                     //  이전 장면의 프레임 1로 보내고 중지
nextFrame();                     //  다음 프레임으로 보내고 중지
prevFrame();                     //  이전 프레임으로 보내고 중지
toggleHighQuality ();            //  저해상도와 고해상도 간을  전환
updateAfterEvent();              //  화면을 갱신 (onClipEvent 핸들러 내에서만 사용)
                                  //  (onMouseDown,  onMouseUp,  onMouseMove)
----------------------------------------------------------------------------
tellTarget ("../a") { nextFrame(); } //  ../a 무비클립을 호출후 다음 프레임 재생
if (_framesloaded = 10) {  }         // 만약 무비의 10프레임이 로드되면
----------------------------------------------------------------------------
// with 문
for (i=0; i<1000; i++) {
    with (aaa[i]) {
       _x = Math.floor(Math.random() * 500);
       _y = random(500);
       _rotation = random(360);
   }
}
// tellTarget 문 (속도빠름)
for (i=0; i<1000; i++) {
    tellTarget (aaa[i]) {
       _x = Math.floor(Math.random() * 500);
       _y = random(500);
       _rotation = random(360);
    }
}
----------------------------------------------------------------------------
aaa = new Array();              // 배열 초기화   
aaa = new Array("1","2","3");   // 배열값 넣기
bbb = ["Sun","Mon","Tue"];      // 배열값 넣기
aaa[1] = "abc";                 // 배열값 변환  ( "2" 가 "abc" 로 변환)
aaa[0] = "Jan" ;  aaa[1] = "Feb" ;  aaa[2] = "Mar" ;         // 배열값 변환
aaa[3] = "Apr"                  // 배열 추가 (aaa 값은  "Jan,Feb,Mar,Apr" )
ccc = aaa.concat(bbb);          // 배열 합침 (ccc 값은  "Jan,Feb,Mar,Apr,Sun,Mon,Tue" )
ddd = ccc.join("/");            // ,를  /로 변환  (ddd 값은  "Jan/Feb/Mar/Apr/Sun/Mon/Tue" )
ddd = ccc.length;               // 배열값 갯수 (ddd 값은  7 )
ddd = ccc.slice(2,4);           // 배열값 읽기 (ddd 값은  "Mar,Apr" )
eee = ccc.push("z","zz");       // 배열추가후  배열값 갯수 (eee 값은  9 )
                                 //  (ccc 값은 "Jan,Feb,Mar,Apr,Sun,Mon,Tue,z,zz"   로 변함)
eee = ccc.pop();                // 마지막 배열 분리후 값  (eee 값은  "zz" )
                                 //  (ccc 값은  "Jan,Feb,Mar,Apr,Sun,Mon,Tue,z"   로 변함)
eee = ccc.shift();              // 첫번째 배열 분리후 값 (eee 값은  "Jan" )
                                 //  (ccc 값은  "Feb,Mar,Apr,Sun,Mon,Tue,z"   로 변함)
eee = ccc.reverse();            // 배열값 순서바꿈 (eee 값은  "z,Tue,Mon,Sun,Apr,Mar,Feb" )
                                 //  (ccc 값도  "z,Tue,Mon,Sun,Apr,Mar,Feb"   로 변함)
eee = ccc.splice(2,5,"x","xx","xxx");  // 배열값 읽기후  변환  (eee 값은  "Mon,Sun,Apr,Mar,Feb" )
                                        //  (ccc 값은  "z,Tue,x,xx,xxx"   로 변함)
eee = ccc.unshift("1","2");     // 첫번째 배열추가후  값  (eee 값은  "7" )
                                 //  (ccc 값은  "1,2,z,Tue,x,xx,xxx"   로 변함)
sss = new Array(1,2,3);         // 숫자 배열값 넣기
uuu = sss.toString();           // 문자로변환.  결과는 1,2,3
vvv = uuu.toLowerCase();        // 대문자를  소문자로 변환.  원래 값은 변경되지 않음     
vvv = uuu.toUpperCase();        // 소문자를  대문자로 변환.  원래 값은 변경되지 않음 
xxx = Number("111")             //  숫자로 변환.   결과는 111
xxx = Number("aaa")             //  숫자로 변환.   결과는 NaN
xxx = Number(true)              // 숫자로 변환.   결과는 1
xxx = Number(false)             //  숫자로 변환.   결과는 0
----------------------------------------------------------------------------
cliparray = new Array();                     // 무비클립을 배열로 저장하기
for (a=1; a<=3; a++)  {
     cliparray[a] =  _root["clip"+a];
     cliparray[a].x =  _root["clip"+a]._x;
     cliparray[a].y =  _root["clip"+a]._y;
     trace(cliparray[a].x);
     trace(cliparray[a].y);
}
----------------------------------------------------------------------------
myString = new String();                           // 문자 변수초기화   
myString = new String("가나다");                   // 문자 넣기
tet="가나다";   myString = new String(tet);        // tet  변수 넣기
text0=myString.charAt(0);                          // text0 값은 "가"  -  1개 읽기
text1=myString.charAt(1);                          // text1 값은 "나"  -  1개 읽기
text2=myString.charAt(2);                          // text2 값은 "다"  -  1개 읽기
text3=myString.concat(" 라마","바사","다");         // text3 값은 "가나다라마바사다"  -  추가
text4=text3.substr(2,4);                           // text4 값은 "다라마바"  -  여러개 읽기
text5=text3.substring(2,4);                        // text5 값은 "다라"  -  여러개 읽기
text6=text3.slice(2,4);                            // text6 값은 "다라"  -  여러개 읽기
text7=myString.charCodeAt(1);                      // text7 값은  45208  - 문자를 코드화
text8="a" + String.fromCharCode(64) + "m";         // text8 값은 "a@m"  - 코드를 문자화
text9= text3.indexOf("다");                        // text9 값은 2  -  문자위치
text10= text3.lastIndexOf("다");                   // text10 값은 7  -  마지막 문자위치
text11= text3.length;                              // text11 값은 8  -  문자길이
text12= text3.split("나");                         // text12 값은 "가,다라마바사다"  -  문자분리
text13= text6.concat(text3);                       // text13 값은 "다라가나다라마바사다"  -  문자합침
text14= text13.substr((text13.length-1),1);        // text14 값은 "다"  -  마지막 문자 읽기
sss = myDate.toString();  day = sss.substring(0,3);     // 문자로변환        
----------------------------------------------------------------------------
// aaa 문장을 bbb 배열로 저장하기                  // 문장을 배열로 저장하기
// 결과는 bbb[0]="a" bbb[1]="b" bbb[2]="c" bbb[3]="d" bbb[4]="e"
aaa = "a b c d e";
aaalen = aaa.length;
bbb = new Array();
for (a=0; a<=aaalen; a++)  { bbb[a] = "";  };
bbbno = 0;   bbbchr = "";
for (a=0; a<=aaalen; a++)  {
if ( aaa.charAt(a) == " " ) {  bbb[bbbno] = bbbchr;   bbbno += 1;   bbbchr = "";  
} else { bbbchr += aaa.charAt(a);   };
};
for (a=0; a<=bbbno; a++)  {  trace( "*" + bbb[a] + "*" )   }; 
----------------------------------------------------------------------------
for (a=1; a<=22; a++) {                                       // 텍스트 필드 글자속성
        this["k"+(a)].textColor=0xff0000;
        this["k"+(a)].border=true;
        this["k"+(a)].borderColor=0xff0000;
        this["k"+(a)].background=true;
        this["k"+(a)].backgroundColor=0xffffff;
};
----------------------------------------------------------------------------
TextField.removeTextField();                                   // 텍스트 필드 삭제
----------------------------------------------------------------------------
createTextField ("instanceName", depth, x, y, width, height)   // 텍스트 필드 생성
      instanceName 새 텍스트 필드의 인스턴스 이름
      depth 새 텍스트 필드의 깊이를 지정하는 양의 정수 (2 는 1를  screen over)
      x 새 텍스트 필드의 x 좌표를 지정하는 정수
      y 새 텍스트 필드의 y 좌표를 지정하는 정수
      width 새 텍스트 필드의 넓이를 지정하는 양의 정수
      height 새 텍스트 필드의 높이를 지정하는 양의 정수
instanceName.type = "dynamic";               // 텍스트 필드의 기본 속성  (dynamic 또는 input)
instanceName.autoSize = "false";             // (글자수에 맞게 테두리 크기 자동 조절 true false center right)
instanceName.border = false;                 // (테두리)  
instanceName.borderColor = 0xff0000;         // (테두리 색상)  
instanceName.background = false;             // (배경)
instanceName.backgroundColor=0xffffff;       // (배경 색상)
instanceName.textColor = 0xff0000;           // (글자 색상)
instanceName.multiline = false;              // (한줄  또는  여러줄)
instanceName.selectable = true;              // (텍스트 필드를 선택할 수 있는지 여부)
instanceName.maxChars = null;                // (사용자가 입력할 수 있는 최대 문자 수) (null 이면 무한대)
instanceName.length = 0;                     // (글자 수)
instanceName._name = "";                     // (인스턴스 이름)
instanceName.variable = "";                  // (변수 이름)
instanceName.html = false;                   // (html 태그 사용 여부)
instanceName.htmlText = "";                  // (html 태그)
instanceName.wordWrap = true;                // (자동 줄바꿈 )
instanceName._x = 0;                         // (x 좌표)
instanceName._y = 0;                         // (y 좌표)
instanceName._width  = 0;                    // (넓이)
instanceName._height = 0;                    // (높이)
instanceName._xscale = 100;                  // (넓이 조절 %)
instanceName._yscale = 100;                  // (높이 조절 %)
instanceName.restrict = "";                  // (입력할 수 있는 문자 세트)
instanceName.embedFonts = false;             // (장치 글꼴 사용 여부)
instanceName.password = false;               // (****표시)
instanceName._visible =  true;               // (보임/안보임.  false로 설정된 텍스트 필드는 사용할 수 없음)
instanceName.scroll = 0;                     // (현재 스크롤 수직 위치)
instanceName.hscroll = 0;                    // (현재 스크롤 수평 위치)
instanceName.maxscroll = 0;                  // (TextField.scroll의 최대값)
instanceName.maxhscroll = 0;                 // (TextField.hscroll의 최대값)
instanceName.text = "";                      // (글자)

myformat = new TextFormat();                 // 텍스트 필드의 기본 TextFormat 속성
myformat.align = "left";                     // (단락의 정렬 )
myformat.blockIndent = 0;                   // (왼쪽 여백에서 블록 들여쓰기. 포인트 단위)
myformat.indent = 0;                        // (왼쪽 여백에서 단락 들여쓰기. 각 단락의 첫 줄에만 적용)
myformat.bold = false;                       // (텍스트가 굵은체로 표시되는지 여부)
myformat.bullet = false;                     // (텍스트가 불릿 목록에 있는지 여부 * 표시)
myformat.color = 0x000000;                  // (텍스트의 색상)
myformat.font = "Times New Roman";           // (텍스트의 글꼴)
myformat.italic = false;                     // (텍스트가 기울임체로 표시되는지 여부)
myformat.leading  = 0;                       // (줄 사이의 행간 세로 간격)
myformat.leftMargin  = 0;                   // (단락의 왼쪽 여백 포인트 단위)
myformat.rightMargin  = 0;                   // (단락의 오른쪽 여백 포인트 단위)
myformat.tabStops = [];                      // (사용자 정의 탭 중지를 지정 // (empty array))
myformat.target = "";                        // (브라우저에서 하이퍼링크가 표시되는 창)
myformat.size = 12;                          // (텍스트의 크기)
myformat.underline = false;                  // (텍스트에 밑줄이 그어졌는지 여부)
myformat.url = "";                           // (텍스트가 링크되는 URL)

instanceName.text = "this is my test field \r aaa" + "bbb";    // 텍스트에 내용 넣기
instanceName.setTextFormat(myformat);        //  텍스트 필드의 TextFormat  변경
----------------------------------------------------------------------------
instanceName.restrict = "A-Z 0-9";           // 대문자, 공백, 숫자만 입력할 수 있음
instanceName.restrict = "^a-z";              // 소문자를 제외한 모든 문자를 입력
instanceName.restrict = "A-Z^Q";             // 대문자 Q를 제외한 대문자만 입력
instanceName.restrict = "\\-"                // 마이너스 부호 (-) 만 입력
----------------------------------------------------------------------------
aa.html = true;                              // html 태그 사용 (b)
aa.htmlText = " this is bold text ";
----------------------------------------------------------------------------
aa.html = true;                              // html 태그 사용 (table)
aa.htmlText = "";
aa.htmlText += "

";
aa.htmlText += "
테이블의 텍스트1 테이블의 텍스트2
";
aa.htmlText += " 이동 하기 ";
----------------------------------------------------------------------------
function Func(arg){  trace ("You clicked me!  Argument was "+arg);   }; 
aa.html = true;                              // html 태그 사용 (asfunction)
aa.htmlText = " Click "; 
----------------------------------------------------------------------------
on (release) {TextField.hscroll += 1; }      // 텍스트를 수평으로 스크롤
on (release) {TextField.scroll += 1;  }      // 텍스트를 수직으로 스크롤
x = TextField.maxscroll;                     // 총 줄수를 표시
----------------------------------------------------------------------------
TextField.onSetFocus = function(){           // 텍스트 입력 (텍스트필드 속성이 입력일때)
    this.text=" input data ";                 // 마우스 클릭시 내용 자동 입력
};
----------------------------------------------------------------------------
// aaa 와 bbb 란 두개의 텍스트 필드를 만든후
aaa.text="1234567890"
Selection.setFocus("aaa");              // 텍스트 모든 문자 포커스. 문자 없으면 커서 깜박
Selection.setSelection(2,5);            // (시작점, 끝점).  결과는 "345" 포커스
bbb.text = Selection.getBeginInde

펌..

출처 : 네이버 지식인 lozzon 님의 글