Defilement auto le l'ascenseur vertical d'1 StrinGrid [Delphi] - Delphi/Pascal - Programmation
Marsh Posté le 30-05-2002 à 18:51:40
API ou message windows... G pas le temps de te préciser + là je dois partir mais en rentrant je te met ça
Marsh Posté le 30-05-2002 à 23:21:08
Oups t'avais oublié
G répondu là :
http://forum.hardware.fr/forum2.php3?post=11082&cat=10
qq modifs 1 peu de et ça devrait être bon
Marsh Posté le 01-06-2002 à 11:14:43
procedure Scroll(Sender: TObject);
var
ScrollMessage:TWMVScroll;
begin
ScrollMessage.Msg:=WM_VScroll;
ScrollMessage.ScrollCode:=sb_Bottom;
Sender.Dispatch(ScrollMessage);
end;
Cette procedure fait défiller le control en tout en bas.
Aprés tu fais un truc du genre :
Scroll(MyStrinGrid);
Et voilou (Enfin G pas testé pour un StrinGrid mais je pense que ça doit marcher)
Marsh Posté le 01-06-2002 à 11:21:12
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, Buttons, Grids;
procedure Scroll(Sender: TObject);
type
TForm1 = class(TForm)
StringGrid1: TStringGrid;
BitBtn1: TBitBtn;
procedure BitBtn1Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
implementation
{$R *.dfm}
procedure Scroll(Sender: TObject);
var
ScrollMessage:TWMVScroll;
begin
ScrollMessage.Msg:=WM_VScroll;
ScrollMessage.ScrollCode:=sb_Bottom;
Sender.Dispatch(ScrollMessage);
end;
procedure TForm1.BitBtn1Click(Sender: TObject);
begin
Scroll(StringGrid1);
end;
end.
ça marche nickel
Marsh Posté le 01-06-2002 à 12:55:56
je veux pas le faire defiller jusqu'en bas du StrinGrid.
J'ai 75 lignes, et chaque pression sur un bouton, une ligne se remplis, et je veux que cette derniere ligne soit visible.
Marsh Posté le 01-06-2002 à 13:14:27
Beh ta ligne se rajoute en bas non ?
Sinon tu remplaces ScrollMessage.ScrollCode:=sb_Bottom; par ScrollMessage.ScrollCode:=sb_LineDown; pour scroller que d'une ligne.
Pour + de renseignement (autres scroll possibles) sur WM_VScroll
Marsh Posté le 30-05-2002 à 18:38:04
J'ai un StrinGrid a 2 dimensions, et au fur et a mesure qu'il se remplis, j'aimerais que l'ascenseur vertical puisse bouger auto afin de toujours pouvoir voir les elements de la derniere ligne remplie (75 lignes le StrinGrid).
C possible ?