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

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

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 09.12.2007, 12:23   #1
metamfetamin
Пользователь
 
Аватар для metamfetamin
 
Регистрация: 02.11.2007
Сообщений: 68
По умолчанию [DELPHI] Изменения кода проекта!!!

Каждая форма имеет размеры, координаты размещения, состояние(развернутое, свернутое), имеется кнопка закрытия. Форму можно перемещать по экрану, изменять ее размер в процессе работы.

1. При открытии форма должна размещаться с левого, верхнего угла
2. Размеры ее задать таким образом, чтобы форма была на весь экран
3. Убрать кнопки свернуть-развернуть

Как зделать следующие изменения в етом юните, что бы форма изменила три выше описаных компонента????
Код:
unit Unit1;
interface
uses 
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs, 
StdCtrls; 
type 
TForm1 = class(TForm) 
ListBox1: TListBox; 
Label1: TLabel;
    Label2: TLabel;
    Label3: TLabel;
    Label4: TLabel;
procedure FormCreate(Sender: TObject); 
procedure ListBox1Click(Sender: TObject);
private 
{ Private declarations } 
public 
{ Public declarations } 
end; 
var
Form1: TForm1; 
implementation 
{$R *.DFM} 
function DriveExists(Drive: Byte):boolean; 
var 
LogDrives: set of 0..25; 
begin 
Integer(LogDrives):=GetLogicalDrives; 
Result:=Drive in LogDrives; 
end; 
procedure TForm1.FormCreate(Sender: TObject); 
var 
D:byte; 
begin 
for d:=0 to 25 do 
if DriveExists(D) then 
begin 
ListBox1.Items.Add(Chr(D+$41)); 
end; 
end; 
function CheckDriveType(Drive:byte):String; 
var 
DriveLetter:Char; 
DriveType:UInt; 
begin 
DriveLetter:=Char(Drive+$41); 
DriveType:=GetDriveType(PChar(DriveLetter+':\')); 
Case DriveType of 
0 : Result:='Тип устройства не определен'; 
1 : Result:='Корневой каталог не существует'; 
DRIVE_REMOVABLE : Result:='Дисковод со сменным носителем'; 
DRIVE_FIXED : Result:='Дисковод с несменным носителем'; 
DRIVE_REMOTE : Result:='Сетевое устройство'; 
DRIVE_CDROM : Result:='Привод CD-ROM'; 
DRIVE_RAMDISK : Result:='Диск, созданный в памяти (RAM)'; 
else 
Result:='Не определен' 
end; 
end; 
function GetFileSysName(Drive:byte):String; 
var 
DriveLetter :Char; 
NoMatter:Cardinal; 
FileSysName:Array[0..MAX_PATH] of Char; 
begin 
DriveLetter:=Char(Drive+$41); 
GetVolumeInformation(PChar(DriveLetter+':\'),nil, 
0,Nil,NoMatter,NoMatter,FileSysName,SizeOf(FileSysName));
result:=FileSysName; 
end; 
function GetFileSysLen(Drive:byte):Integer; 
var 
DriveLetter :Char; 
NoMatter:Cardinal; 
FileSysName:Array[0..MAX_PATH] of Char; 
begin 
DriveLetter:=Char(Drive+$41); 
GetVolumeInformation(PChar(DriveLetter+':\'),nil, 
0,Nil,NoMatter,NoMatter,FileSysName,SizeOf(FileSysName)); 
result:=SizeOf(FileSysName); 
end; 
procedure TForm1.ListBox1Click(Sender: TObject); 
var
Drive:byte; 
begin 
with ListBox1 do drive:= ord(Items[ItemIndex][1])-$41;
Label1.Caption:='Номер устройства = ' + intToStr(drive);
Label2.Caption:=CheckDriveType(Drive);
Label3.Caption:='Название файловой системы - ' + GetFileSysName(Drive);
Label4.Caption:='Длина имени файла = ' + IntToStr(GetFileSysLen(Drive)); 
end; 
end.

Последний раз редактировалось metamfetamin; 09.12.2007 в 12:25.
metamfetamin вне форума Ответить с цитированием
Старый 09.12.2007, 12:34   #2
_Dmitry
Участник клуба
 
Аватар для _Dmitry
 
Регистрация: 02.09.2007
Сообщений: 1,193
По умолчанию

1.
Left:=0;
Top:=0;
2.
Width:=Screen.Width;
Height:=Screen.Height-28;
или
WindowState:=wsMaximized;
3.
BorderIcons:=[biSystemMenu];
_Dmitry вне форума Ответить с цитированием
Старый 09.12.2007, 12:38   #3
metamfetamin
Пользователь
 
Аватар для metamfetamin
 
Регистрация: 02.11.2007
Сообщений: 68
По умолчанию

А ето описывается в самом юните??????

Последний раз редактировалось metamfetamin; 09.12.2007 в 12:50.
metamfetamin вне форума Ответить с цитированием
Старый 09.12.2007, 13:03   #4
_Dmitry
Участник клуба
 
Аватар для _Dmitry
 
Регистрация: 02.09.2007
Сообщений: 1,193
По умолчанию

Это ответы на три вопроса. Если нужно все это проделать с формой при открытии, то используем событие OnCreate:
Код:
procedure TForm1.FormCreate(Sender: TObject);
begin
  Left:=0;
  Top:=0;
  Width:=Screen.Width;
  Height:=Screen.Height-28;
  BorderIcons:=[biSystemMenu];
end;
или
Код:
procedure TForm1.FormCreate(Sender: TObject);
begin
  WindowState:=wsMaximized;
  BorderIcons:=[biSystemMenu];
end;
_Dmitry вне форума Ответить с цитированием
Старый 09.12.2007, 13:52   #5
metamfetamin
Пользователь
 
Аватар для metamfetamin
 
Регистрация: 02.11.2007
Сообщений: 68
По умолчанию

Спасибо!!! Все получилось!!!
metamfetamin вне форума Ответить с цитированием
Ответ


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

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Правила написания кода на Delphi Virtson Общие вопросы Delphi 17 06.08.2010 08:59
Delphi. Редактор кода. BOBAH13 Общие вопросы Delphi 5 25.05.2008 00:20
Трансляция кода из Delphi в C phobos Помощь студентам 9 21.04.2007 18:26