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

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

Вернуться   Форум программистов > Delphi программирование > Компоненты Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

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

Ответ
 
Опции темы Поиск в этой теме
Старый 14.02.2008, 13:49   #1
Alter
Старожил
 
Аватар для Alter
 
Регистрация: 06.08.2007
Сообщений: 2,183
Стрелка Пропадают кнопки из ListBox

Пробую сделать список с кнопками, для начала(потом можно что-нибудь ещё внедрять). Созданные кнопки перестают отображаться при резком скачке из начала в конец списка(и резких движениях), когда кол-во кнопок > = 35. Что нетак с программой.
___________________________________ ___________________________
Программа эта тестовая, для отладки. Проверяю на ней.
Вложения
Тип файла: rar ButsInLst.rar (6.9 Кб, 22 просмотров)
Alter вне форума Ответить с цитированием
Старый 14.02.2008, 16:48   #2
mihali4
*
Старожил
 
Регистрация: 22.11.2006
Сообщений: 9,201
По умолчанию

С этой все в порядке, задавал 2 сотни кнопок - ничего не пропадает, хоть с бубном вокруг пляши...
Ищите гада в системе...
mihali4 вне форума Ответить с цитированием
Старый 15.02.2008, 09:17   #3
Alter
Старожил
 
Аватар для Alter
 
Регистрация: 06.08.2007
Сообщений: 2,183
Сообщение вот так вот

Цитата:
Сообщение от mihali4 Посмотреть сообщение
С этой все в порядке, задавал 2 сотни кнопок - ничего не пропадает, хоть с бубном вокруг пляши...
Ищите гада в системе...
При прокрутке мышей и при помощи PageUp и PageDown, кнопки непропадают при большом колличестве кнопок.
Но если сделать по этому способу(даже при 36 кнопках).

Вот так сделайте:
1) выберите для создания много кнопок, хоть 200 и т.д;
2) установите при помощт мыши, первую строку выделенной;
3) нажмите End на клаве. При переходе из начало в конец(при колл-ве кнопок > = 35) при помощи Home и End, происходит пропадание.
Alter вне форума Ответить с цитированием
Старый 15.02.2008, 09:56   #4
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Вот тут подкрути:

Код:
procedure TForm1.LBox1DrawItem(Control: TWinControl; Index: Integer;
  Rect: TRect; State: TOwnerDrawState);
begin
  with LBox1 do
   begin
 IF (odSelected in State) Then
  Canvas.Brush.Color := clred;
  Canvas.FillRect(Rect);
  SetBKMode(Canvas.Handle, TRANSPARENT);
  Canvas.Font.Color := $00C66931;
  Canvas.TextOut(Rect.Left + ButnX[Index].Width + 32 + 4,
                 Rect.Top + 9, Items[Index]);
//-----------------------------------------
 ButnX[index].Top := Rect.Top;
//-----------------------------------------
  ButnX[index].Repaint;
   end;
end;
Понял?
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 16.02.2008, 17:27   #5
Alter
Старожил
 
Аватар для Alter
 
Регистрация: 06.08.2007
Сообщений: 2,183
По умолчанию

Спасибо, то что нужно.
Alter вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Фон в listbox Черничный Компоненты Delphi 17 15.07.2008 17:15
UCOZ: Кнопки кнопки на изображении ReDuX HTML и CSS 19 25.04.2008 02:39
триггерные кнопки и кнопки переключатели в DELPHI MARGO Помощь студентам 3 12.11.2007 17:35
ListBox lin Помощь студентам 1 04.06.2007 13:46
ListBox & *.Bmp Saro Мультимедиа в Delphi 1 24.04.2007 02:06