Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Проблема со StatusBar'om [D6, XP]


Malik ©   (2007-04-26 20:49:00) 

Люди у меня такая проблема: почемуто при максимизации а затем возрощении нормального размера формы StatusBar теряется не знаю что делать.... Может у кого-нибудь есть какие-нибудь предложения. У меня стоят только запрещения на минимальный размер формы. Да еще при изменении размеров формы другие компоненты меняют размер.


Malik   (2007-04-26 22:28:00) [1]

Теперь работает про Align забыл, Спасибо большое!!!


Malik   (2007-04-26 22:20:00) [2]

PS
 Я ярый противник ВБ


Malik   (2007-04-26 22:18:00) [3]


> StatusBar1.Width:=ClientWidth;
>  StatusBar1.Top:=ClientHeight-StatusBar1.Height;

Что то лекарства бракованные...))) Нет с их проблемой я почти разобрался помоему (она у меня тоже была), но, при резкой смене размера на минимально возможный формы путем перетаскивания за край, всёравно этот гриразмера исчизает... парадокс помоему и ничего не более. Как это прейскорбно не звучало бы, но в ВБ этой проблемы нет...


{RASkov}   (2007-04-26 21:48:00) [4]

И вот еще... в твоем варианте "лечится" так:
у StatusBar1 в ИнсОб выставляешь Align = alNone и в procedure TForm7.FormResize(Sender: TObject);
..............
 StatusBar1.Width:=ClientWidth;
 StatusBar1.Top:=ClientHeight-StatusBar1.Height;
..............

Т.е. как у тебя, только константу 19 замени лучше, и не надо в методах формы писать имя ее переменной (Form7)


{RASkov}   (2007-04-26 21:37:00) [5]

Посмотри, тоже самое почти
http://www.delphimaster.ru/cgi-bin/forum.pl?n=18&id=1177022043
"форму не кидай", ясно уже.


{RASkov}   (2007-04-26 21:21:00) [6]

Угу... только я про DFM говорил - правой кнопкой по форме > ViewAsText - копируешь и сюда.... :)
непонятно зачем на OnFormResize менять положение и размер статусбара у него все это Align'ом делается
И все же кинь...


Malik   (2007-04-26 21:00:00) [7]

unit Unit7;

interface

uses
 Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
 StdCtrls, Grids,Unit6, ComCtrls, Buttons, ExtCtrls;

type
 TForm7 = class(TForm)
   StringGrid1: TStringGrid;
   StatusBar1: TStatusBar;
   Label2: TLabel;
   Label3: TLabel;
   Label4: TLabel;
   Label8: TLabel;
   Label9: TLabel;
   Label10: TLabel;
   Edit1: TEdit;
   Edit2: TEdit;
   GroupBox1: TGroupBox;
   Shape1: TShape;
   Label11: TLabel;
   Label12: TLabel;
   Button6: TButton;
   BitBtn1: TBitBtn;
   Button7: TButton;
   Button8: TButton;
   Button9: TButton;
   Button10: TButton;
   Button11: TButton;
   Button12: TButton;
   procedure Button3Click(Sender: TObject);
   procedure Button4Click(Sender: TObject);
   procedure Button1Click(Sender: TObject);
   procedure Button2Click(Sender: TObject);
   procedure Button5Click(Sender: TObject);
   procedure StringGrid1DblClick(Sender: TObject);
   procedure FormResize(Sender: TObject);
   procedure StatusBar1Resize(Sender: TObject);
   procedure FormPaint(Sender: TObject);
   {procedure Button3Click(Sender: TObject);   }
 private
   { Private declarations }
 public Kafedra,Mesjac, God:String;

   { Public declarations }
 end;
procedure TablF7;
var
 Form7: TForm7;

implementation

uses Unit11;

{$R *.DFM}
procedure TablF7;
   var i: integer;
       s: string;
       s1: array [1..6] of string;
   begin
       s1[1]:='¹¹';
       s1[2]:='Ô.È.Î. äîêëàä÷èêà';
       s1[3]:='Ðàíã êîíôåðåíöèè ';
       s1[4]:=' Ãîðîä ';
       s1[5]:='Íàçâàíèå êîíôåðåíöèè';
       s1[6]:='Íàçâàíèå äîêëàäà';
       Form7.StringGrid1.TopRow:=2;
       Form7.StringGrid1.LeftCol:=2;
       Form7.StringGrid1.ColWidths[0]:=15;
       Form7.StringGrid1.RowHeights[1]:=15;
       for i:=1 to 6 do
       begin
          Str(i,s);
          Form7.StringGrid1.Cells[i-1,1]:=s;
          Form7.StringGrid1.Cells[i-1,0]:=s1[i];
       end;
       Form7.StringGrid1.Cells[0,2]:='1';
        Form7.StringGrid1.TopRow:=2;
       Form7.StringGrid1.LeftCol:=1;
       Form7.Edit1.Text:=Form7.Mesjac;
       Form7.Edit2.Text:=Form7.God;
    end;

procedure TForm7.Button3Click(Sender: TObject);
begin
  Form6.Kafedra:=Form7.Kafedra;
  Form6.Mesjac:=Form7.Mesjac;
  Form6.God:=Form7.God;
  TablF6;
  Form6.Show;
  Form7.Close;
end;

procedure TForm7.Button4Click(Sender: TObject);
begin
  Form7.Close;
end;

procedure TForm7.Button1Click(Sender: TObject);
var i:integer;
    s: string;
begin
i:=form7.StringGrid1.RowCount+1;
 form7.StringGrid1.RowCount:=i;
 i:=i-2;
  Str(i,s);
  Form7.StringGrid1.Cells[0,i+1]:=s;
end;

procedure TForm7.Button2Click(Sender: TObject);
var Vf,Vf1: TextFile;
  i, j,k: integer;
  s1,s2,s3,s :string;
begin
     s2:=Kafedra;
     s:='Ôîðìà_4.';
     s1:=s2+'\'+s+'txt';
     s:='form\'+s+'rtf';
     k:=StringGrid1.RowCount;
     Rewrite( Vf, s1);
     Rewrite( Vf1, s);
  for i:=0 to k-1 do
   if i1 then
   begin
     for j:=1 to 6 do
      begin
      s3:=StringGrid1.Cells[j-1,i]+';' ;
      Write( Vf, s3);
      Write( Vf1, s3);
      end;
      if i1 then
          begin
           Writeln( Vf, s2,';',Mesjac,';', God );
           Writeln( Vf1, s2,';',Mesjac,';', God );
          end;
   end;
    Flush( Vf );
    CloseFile( Vf );
    Flush( Vf1 );
    CloseFile( Vf1 );
    Form11.f4:=1 ;
end;

procedure TForm7.Button5Click(Sender: TObject);
var i:integer;

begin
  i:=StringGrid1.RowCount-1;
 StringGrid1.RowCount:=i;
end;

procedure TForm7.StringGrid1DblClick(Sender: TObject);
var x,y,i,j,i1,j1:integer;
begin
 i1:=form7.StringGrid1.RowCount-1;
 j1:=form7.StringGrid1.ColCount-1;
 x:= Mouse.CursorPos.x;
 y:= Mouse.CursorPos.y;
 Form7.StringGrid1.MouseToCell(x,y,i,j);
  if (i>0)and(j>1)and(i


{RASkov}   (2007-04-26 20:56:00) [8]

> [0] Malik ©   (26.04.07 20:49)

На форме много компонентов? если не много кинь форму сюда...


Наверх

Титульная страница Поиск, карта сайта Написать письмо