Форум: "Начинающим";
Текущий архив: 2007.05.20;
Скачать: [xml.tar.bz2];
ВнизПроблема со StatusBar om Найти похожие ветки
← →
Malik © (2007-04-26 20:49) [0]Люди у меня такая проблема: почемуто при максимизации а затем возрощении нормального размера формы StatusBar теряется не знаю что делать.... Может у кого-нибудь есть какие-нибудь предложения. У меня стоят только запрещения на минимальный размер формы. Да еще при изменении размеров формы другие компоненты меняют размер.
← →
{RASkov} © (2007-04-26 20:56) [1]> [0] Malik © (26.04.07 20:49)
На форме много компонентов? если не много кинь форму сюда...
← →
Malik © (2007-04-26 21:00) [2]
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 i<>1 then
begin
for j:=1 to 6 do
begin
s3:=StringGrid1.Cells[j-1,i]+";" ;
Write( Vf, s3);
Write( Vf1, s3);
end;
if i<1
then
begin
Writeln( Vf,"êàôåäðà ; ìåñÿö ; ãîä");
Writeln( Vf1,"êàôåäðà ; ìåñÿö ; ãîä");
end
else
if i>1 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<=i1)and(j<=j1) then
begin Form7.StringGrid1.TopRow:=i;
Form7.StringGrid1.LeftCol:=j;
end
end;
procedure TForm7.FormResize(Sender: TObject);
begin
GroupBox1.Top:=Form7.ClientHeight-GroupBox1.Height-22;
GroupBox1.Width:=Form7.ClientWidth-10;
//Image1.Left:=Form7.ClientWidth-Image1.Width;
//Image1.Top:=GroupBox1.ClientHeight-Image1.Height;
StringGrid1.Width:=Form7.ClientWidth-10;
StringGrid1.Height:=Form7.ClientHeight-StringGrid1.Top-113-22;
StatusBar1.Width:=Form7.ClientWidth;
StatusBar1.Top:=Form7.ClientHeight-19;
end;
end.
← →
{RASkov} © (2007-04-26 21:21) [3]Угу... только я про DFM говорил - правой кнопкой по форме > ViewAsText - копируешь и сюда.... :)
непонятно зачем на OnFormResize менять положение и размер статусбара у него все это Align"ом делается
И все же кинь...
← →
{RASkov} © (2007-04-26 21:37) [4]Посмотри, тоже самое почти
http://delphimaster.net/view/2-1177022043/
"форму не кидай", ясно уже.
← →
{RASkov} © (2007-04-26 21:48) [5]И вот еще... в твоем варианте "лечится" так:
у StatusBar1 в ИнсОб выставляешь Align = alNone и в procedure TForm7.FormResize(Sender: TObject);..............
StatusBar1.Width:=ClientWidth;
StatusBar1.Top:=ClientHeight-StatusBar1.Height;
..............
Т.е. как у тебя, только константу 19 замени лучше, и не надо в методах формы писать имя ее переменной (Form7)
← →
Malik © (2007-04-26 22:18) [6]
> StatusBar1.Width:=ClientWidth;
> StatusBar1.Top:=ClientHeight-StatusBar1.Height;
Что то лекарства бракованные...))) Нет с их проблемой я почти разобрался помоему (она у меня тоже была), но, при резкой смене размера на минимально возможный формы путем перетаскивания за край, всёравно этот гриразмера исчизает... парадокс помоему и ничего не более. Как это прейскорбно не звучало бы, но в ВБ этой проблемы нет...
← →
Malik © (2007-04-26 22:20) [7]PS
Я ярый противник ВБ
← →
Malik © (2007-04-26 22:28) [8]Теперь работает про Align забыл, Спасибо большое!!!
Страницы: 1 вся ветка
Форум: "Начинающим";
Текущий архив: 2007.05.20;
Скачать: [xml.tar.bz2];
Память: 0.5 MB
Время: 0.047 c