Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Начинающим";
Текущий архив: 2007.01.21;
Скачать: [xml.tar.bz2];

Вниз

Подскажите как сделать DBGrid без скролов   Найти похожие ветки 

 
KyRo   (2006-12-25 10:41) [0]

Подскажите как избавить грид от скролбаров.

Я пытаюсь перекрыть метод пейнт вот таким способом

unit NoScrollDBGrid;

interface

uses
 SysUtils, Classes, Controls, Grids, DBGrids,windows;

type
 TNoScrollDBGrid = class(TDBGrid)
 private
   { Private declarations }
 protected
    procedure Paint; override;
   { Protected declarations }
 public
   { Public declarations }
 published
   { Published declarations }
 end;

procedure Register;

implementation

procedure TNoScrollDBGrid.Paint;
begin
 SetScrollRange(Handle, SB_HORZ, 0, 0, false);
 SetScrollRange(Handle, SB_VERT, 0, 0, false);
 inherited;
end;

procedure Register;
begin
 RegisterComponents("Samples", [TNoScrollDBGrid]);
end;

end.


Таким образом у меня получилось избавится от вертикального скрола , а от горизонтального нет !!

Подскажите как убрать горизонтальный скрол ?


 
Desdechado ©   (2006-12-25 12:55) [1]

     EnableScrollBar( gridAbTerms.Handle, SB_VERT, ESB_DISABLE_BOTH );
     ShowScrollBar( gridAbTerms.Handle, SB_VERT, False );


 
KyRo   (2006-12-25 13:31) [2]

Да помогло скролы убрались но при этом появилось какое то неприятное мерцание компонента во время пролистывания записей !!
Можно ли как то его убрать ?


 
allrussia ©   (2006-12-25 16:16) [3]

KyRo  
попробуй
DBGrid1.DoubleBuffered:=true;


 
KyRo   (2006-12-25 16:36) [4]


> allrussia ©   (25.12.06 16:16) [3]
> KyRo  
> попробуй
> DBGrid1.DoubleBuffered:=true;


Помогло спасибо .
Но появился еще один вопрос !
Когда быстро пролистываеш список записей в гриде то все равно видно скрол ! Он сначала прорисовывается , а потом исчезает , но все это он делает очень быстро.
Можно ли сделать так что бы грид вообще его не рисовал ?


 
allrussia ©   (2006-12-25 19:57) [5]

KyRo

poprobui sleduuschee:

V papke Delphi\Source\Vcl vozmi fail
Grids.pas naidi tam strochku
FScrollBars := ssBoth;
pereimenui ee v
FScrollBars := ssNone;
i sohrani Grids.pas v papku
Delphi\Lib

teper tebe uzhe ne nado budet vse chto ranshe tut pisali Desdechado i ya


 
rar ©   (2006-12-25 20:34) [6]

Попробуй так

TNewDBGrid(DBGRidFind).ScrollBars:=ssVertical;


 
KyRo   (2006-12-27 17:23) [7]


> poprobui sleduuschee:
>
> V papke Delphi\Source\Vcl vozmi fail
> Grids.pas naidi tam strochku
> FScrollBars := ssBoth;
> pereimenui ee v
> FScrollBars := ssNone;
> i sohrani Grids.pas v papku
> Delphi\Lib
>
> teper tebe uzhe ne nado budet vse chto ranshe tut pisali
> Desdechado i ya


Это конечно хорошо . Но так у меня вообще не в каком гриде их не будет , а мне надо в некоторых !


 
Desdechado ©   (2006-12-27 18:20) [8]

я [1] делал после открытия датасета
при этом не замечал, чтобы моргало


 
allrussia ©   (2006-12-28 00:17) [9]

KyRo   (27.12.06 17:23) [7]

Это конечно хорошо . Но так у меня вообще не в каком гриде их не будет , а мне надо в некоторых !

Тебе же Desdechado уже писал:
в каких надо делаешь
ShowScrollBar( dbgrid1.Handle, SB_BOTH, True )


 
KyRo   (2006-12-28 11:11) [10]


> Desdechado ©   (27.12.06 18:20) [8]
> я [1] делал после открытия датасета
> при этом не замечал, чтобы моргало


Если быстрор прокручивать то получается что грид сначала рисует скрол , а потом его убирает. Это происходит быстро но если пролистывать большой набор данных то это видно !


 
Desdechado ©   (2006-12-28 11:23) [11]

Я и на больших пробовал на слабых машинах.
Но я не понимаю, зачем "быстро прокручивать большой набор данных"?
Зачем он тогда большой? Только чтобы прокручивать?
Не проще ли ограничить до читаемого размера?



Страницы: 1 вся ветка

Форум: "Начинающим";
Текущий архив: 2007.01.21;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.47 MB
Время: 0.051 c
1-1164480626
Pepelyaev
2006-11-25 21:50
2007.01.21
Com Port


2-1167998104
dddd
2007-01-05 14:55
2007.01.21
конвертация типа integer в Date


15-1167125862
VitV
2006-12-26 12:37
2007.01.21
Настройка доступа в ХР


2-1167689615
Footballer
2007-01-02 01:13
2007.01.21
TMemo и его Lines


15-1167406808
Ученик чародея
2006-12-29 18:40
2007.01.21
С Новым Годом Свиньи.





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский