자유롭게 질의 및 응답을 할 수 있는 게시판입니다. 개발자 여러분의 답변이 큰 도움이 됩니다. 
  • 제품설치/등록 오류 문의: 설치/등록 Q&A 이용 (제품 구매 고객 한정)

안녕하세요?

 

델파이 시애틀을 이용하여 모바일 앱을 개발하려고 연구중입니다.

 

이번 질문은 ListBox에 TFrame를 이용하여 사원 목록을 만들었습니다.

 

ListBox에 리스트를 만들고 수정하는 법도 익혔습니다.

 

그런데 ListBox에서 특정 인덱스의 리스트를 삭제하는 방법을 못 찾고 있습니다.

 

예를 들면 체크된 리스트 아이템만 골라서 리스트에서 제거하려고 하는데 제거하는 매서드가 무엇인지요?

 

아래는 ListBox에 TFrame을 생성하여 리스트화하는데 사용한 매서드와 특정  인덱스의 리스트를 수정해본 소스입니다.

 

//ListBox에 프레임을 생성해서 붙임

procedure TForm1.AddWorkPlan(ListBox: TListBox; FrameHeight:integer; FrameCode, STCode, STName, STBCode, STJCode, ImageUrl: String;
  BGColor, NameColor, BCodeColor: Cardinal);
var item : TListBoxItem;
    iFrmWorkPlan : TFrmWorkPlanFrame;//리스트에 붙여질 프레임
begin
    ListBox.BeginUpdate;
    Item := TListBoxItem.Create(ListBox);//리스트박스의 리스트에 붙을 아이템하나 생성
    iFrmWorkPlan := TFrmWorkPlanFrame.Create(self);//아이템에에 붙일 프레임을 하나 생성
    iFrmWorkPlan.Parent:= item;//프레임을 아이템관리자의 하위개체로 등록
    iFrmWorkPlan.Name :=  FrameCode;//프레임을 별도 제어하기 위해 이름을 지정.
    iFrmWorkPlan.Width := ListBox.Width;
    iFrmWorkPlan.Width := ListBox.Width;
    iFrmWorkPlan.Height := FrameHeight;
    iFrmWorkPlan.Position.X := 0;
    iFrmWorkPlan.Position.Y := 0;
    //프레임의 개별 컴포넌트의 값 설정
    iFrmWorkPlan.HideValue1 := STCode;
    iFrmWorkPlan.HideValue2 := STCode;
    iFrmWorkPlan.HideValue3 := STCode;
    iFrmWorkPlan.STName.Text := STName;
    iFrmWorkPlan.STJCode.Text := STBCode + ' - ' + STJCode;

    iFrmWorkPlan.background.Fill.Color := BGColor;
    iFrmWorkPlan.background.Stroke.Color := BGColor;
    iFrmWorkPlan.STName.TextSettings.FontColor := NameColor;
    iFrmWorkPlan.STJCode.TextSettings.FontColor := BCodeColor;


    item.Height := iFrmWorkPlan.Height;
    item.Width  := iFrmWorkPlan.Width ;
    item.OnApplyStyleLookup := WorkPlanLookup;//리스트박스의 아이템이 화면에 보일때 처리할 내용.(한번에 불러오기 너무 큰 데이터들은 보일때 부분부분씩 불러올수 있음).Pay_ItemApplyStyleLookup함수를 만들어서 해당 함수가 작동
    item.Data := iFrmWorkPlan;//아이템에 만들어진 프레임을 붙임
    ListBox.AddObject(item); //리스트 박스에 생성한 아이템을 붙임
    ListBox.EndUpdate;
end;

//리스트  10개 생성
procedure TForm1.Button1Click(Sender: TObject);
var i : integer;
begin
    for i := 0 to 10 do
    begin
        AddWorkPlan(ListBox1, 100+(i*10), 'WP'+IntToStr(i), 'WP'+IntToStr(i+1), '철수'+IntToStr(i), '부서'+IntToStr(i), '대리', '');
    end;
end;

//2번째 리스트아이템 이름 변경

procedure TForm1.Button2Click(Sender: TObject);
var item : TListBoxItem;
begin
      item := ListBox1.ListItems[1];//1번째 아이템을 불러온다.

      (item.Data as TFrmWorkPlanFrame).STName.Text := '영희'+IntToStr(1);  //프레임형태로 형변환 하여 이름값 변경
end;

번호 제목 글쓴이 날짜 조회 수
공지 [프로그래밍 강의] 2021.6~2021.12 관리자 2015.01.22 17190
공지 유용한 관련 사이트 관리자2 2014.03.20 56067
공지 본 게시판은 개발자 여러분들의 질문과 답변을 공유하는 공간입니다. 관리자 2012.01.10 99505
1959 [델파이 부트캠프] 하위버전에서 신버전으로 올렸을때 에러가 나면 다시만들어야 하나요? 험프리 2016.09.30 291
1958 MDI Application 에서 TeeChart 를 자식폼에 넣으면 에러 발생하는 문제??? [6] sihwan 2018.03.23 291
1957 [10.4 시드니 신기능] 세미나의 데모에서 사용한 샘플 소스코드를 얻을 수 있을까요? file 험프리 2020.06.10 291
1956 delphi 10에서 사물인터넷관련 개발 [1] 영감땡감 2016.01.07 291
1955 베를린10.1 upgrade 후 Usb 연결후 .설치안되고(안드로이드) 다운받아서하면 됩니다.. [4] file 모나도 2016.08.17 292
1954 TListView Virtual 모드(?)에 대한 질문입니다. [2] file XeroNicHS 2016.11.22 292
1953 델파이 소스 좀 확인 부탁 드립니다. 윈도우 플랫폼에서는 작동되는데 안드로이드는 안되네요. [2] 손보라 2019.03.08 292
1952 DBGrid에 이미지 넣기 질문입니다. 초보델팡이 2019.05.29 292
1951 델파이 10 stringgrid 관련 [5] 개미 2020.12.02 292
1950 Delphi XE버전 호환성관련 공식문서 [1] 차니아빠 2019.11.06 293
1949 [XE8 출시세미나] 코드분석 기능이 유용한것 같은데 C++빌더에서는 언제 지원하나요? [1] Humphery 2015.04.30 293
1948 LME288 링크에러 [2] 한시민 2016.03.18 293
1947 웹브라우저로 네이버 웨일을 사용할 수 있는 방법을 알려주세요. [1] 미스터리 2020.09.21 293
1946 FastReport 관련 문의 [1] 쿤이 2021.07.12 293
1945 모바일 동영상 강의 DB 문의 [1] file syc 2015.07.27 294
1944 앱 재실행 관련 문의드립니다. [1] 우정 2017.02.11 294
1943 MS-SQL DB에 smalldatetime type 일자저장시 data overflow (status = 6h) 에러 [2] delphi 2018.04.23 294
1942 컴포넌트 아이콘 표시가 안나올때 [1] file 건들다맞지 2018.06.14 294
1941 프로젝트그룹(ProjectGroup)의 여러 프로젝트가 한꺼번에 빌드 됨 [2] file 미스터몽키 2015.09.15 294
1940 [마이그레이션 세미나] 소스파일은 없고, 실행파일만 있을 때 실행파일 만으로 소스코드를 불러올 수 있는 프로그램이 있을까요? 험프리 2015.11.24 294