Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 14.03.2010, 21:51   #1
Alex2009
Proger Man
Форумчанин
 
Аватар для Alex2009
 
Регистрация: 07.03.2009
Сообщений: 584
По умолчанию LISTBOX и ItemIndex

Доброе время суток.Не буду вас грузить раскажу сразу свой вопрос.Итак мне нужно как то определить сколько в ListBox имеется ItemIndex их может быть сколько угодно, все зависит от того сколько пользователь всел их туда.И еще вопрос возле каждого текста в ListBox должна быть номерация как сделать и это?
Всем заранее спосибо!
ShowMessage('Добро пожаловать!');
Alex2009 вне форума Ответить с цитированием
Старый 14.03.2010, 21:57   #2
bitSoft
Programming...
Форумчанин
 
Аватар для bitSoft
 
Регистрация: 13.03.2010
Сообщений: 198
По умолчанию

Да первый глупый вопрос,
1. ListBox.Items.Count
2.
Код:
var
 i : integer;
begin
 for i := 0 to ListBox.Items.Count - 1 do
   ListBox.Items.Strings[i] := ListBox.Items.Strings[i] + '     ' + IntToStr(i);

end;
Код:
With TProgrammersForum.Create do  AddNewTopic('Title','Content...');
bitSoft вне форума Ответить с цитированием
Старый 14.03.2010, 22:12   #3
Alex2009
Proger Man
Форумчанин
 
Аватар для Alex2009
 
Регистрация: 07.03.2009
Сообщений: 584
По умолчанию

Извени просто первый рас ЛисБокс использую.Люди у кого есть открытый код Listbox хочу под себя переписать!
ShowMessage('Добро пожаловать!');
Alex2009 вне форума Ответить с цитированием
Старый 14.03.2010, 22:17   #4
Alex2009
Proger Man
Форумчанин
 
Аватар для Alex2009
 
Регистрация: 07.03.2009
Сообщений: 584
По умолчанию

Вот теперь нарисовался такой вопрос нужно выделять в листБоксе акивный ItemIndex одним цветом тоесть если я на ItemIndex:=1 класнул мышкой он выделился синим а неоктивные белым?
ShowMessage('Добро пожаловать!');
Alex2009 вне форума Ответить с цитированием
Старый 14.03.2010, 22:58   #5
bitSoft
Programming...
Форумчанин
 
Аватар для bitSoft
 
Регистрация: 13.03.2010
Сообщений: 198
По умолчанию

не забудь, //lst1.Style := lbOwnerDrawFixed;

Код:
unit untMain;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls;

type
  TForm1 = class(TForm)
    lst1: TListBox;
    procedure lst1DrawItem(Control: TWinControl; Index: Integer; Rect: TRect;
      State: TOwnerDrawState);
    procedure lst1Click(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form1: TForm1;
  ItemSelcted : Integer = -1;

implementation

{$R *.dfm}

procedure TForm1.lst1Click(Sender: TObject);
begin
 ItemSelcted := lst1.ItemIndex;
 lst1.Repaint;
end;

procedure TForm1.lst1DrawItem(Control: TWinControl; Index: Integer; Rect: TRect;
  State: TOwnerDrawState);
begin
 if ItemSelcted = Index then lst1.Canvas.Font.Color := clRed else lst1.Canvas.Font.Color := clBlack;
 lst1.Canvas.TextRect(Rect,Rect.Left,Rect.Top,lst1.Items.Strings[Index]);
end;

end.
Код:
With TProgrammersForum.Create do  AddNewTopic('Title','Content...');
bitSoft вне форума Ответить с цитированием
Старый 14.03.2010, 23:12   #6
Alex2009
Proger Man
Форумчанин
 
Аватар для Alex2009
 
Регистрация: 07.03.2009
Сообщений: 584
По умолчанию

Ой извени подскажи что нужно написать для выделения активного Индекса жирным текстом?
ShowMessage('Добро пожаловать!');
Alex2009 вне форума Ответить с цитированием
Старый 14.03.2010, 23:25   #7
bitSoft
Programming...
Форумчанин
 
Аватар для bitSoft
 
Регистрация: 13.03.2010
Сообщений: 198
По умолчанию

Цитата:
Сообщение от Alex2009 Посмотреть сообщение
Ой извени подскажи что нужно написать для выделения активного Индекса жирным текстом?
я тебе показал пример как сменить цвет, ну так и шрифт,

Код:
 
 lst1.Canvas.Font.Name := 'Tahoma';
 lst1.Canvas.Font.Style := [fsBold];
Код:
With TProgrammersForum.Create do  AddNewTopic('Title','Content...');
bitSoft вне форума Ответить с цитированием
Старый 15.03.2010, 00:09   #8
Alex2009
Proger Man
Форумчанин
 
Аватар для Alex2009
 
Регистрация: 07.03.2009
Сообщений: 584
По умолчанию

Еще вопрос как сделать так например открываю файл в ListBox
ListBox1.Item.add(OpenDialog1.FileN ame)
Как сделать чтобы одинаковые файлы в ListBox перезаписывались и не повторялись?
ShowMessage('Добро пожаловать!');
Alex2009 вне форума Ответить с цитированием
Старый 15.03.2010, 00:19   #9
bitSoft
Programming...
Форумчанин
 
Аватар для bitSoft
 
Регистрация: 13.03.2010
Сообщений: 198
По умолчанию

http://delphi.about.com/od/delphitip...e-duplicat.htm
Код:
With TProgrammersForum.Create do  AddNewTopic('Title','Content...');
bitSoft вне форума Ответить с цитированием
Старый 15.03.2010, 18:55   #10
Alex2009
Proger Man
Форумчанин
 
Аватар для Alex2009
 
Регистрация: 07.03.2009
Сообщений: 584
По умолчанию

Помогите горю облазил и перерыл все не как не найду как перетаскивать файлы в ListBox в моем случае это mp3 файлы.Помогите плиз...
ShowMessage('Добро пожаловать!');
Alex2009 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Combobox itemindex beemoto Общие вопросы Delphi 28 06.05.2009 14:09
Itemindex в Popupmenu Lich Общие вопросы Delphi 4 09.01.2009 21:37
Проблема с ComboBox.ItemIndex Селезин Общие вопросы Delphi 3 27.10.2007 16:42
Как заставить Itemindex в ListBox перемещаться при добавлении новой строки на онную ? DartMrakkk Общие вопросы Delphi 10 05.07.2007 11:54