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

Вниз

Достучаться до TOpenDialog   Найти похожие ветки 

 
Ламерюга   (2007-01-26 15:41) [0]

Вопрос - как? Мне бы хотелось его по-своему раскрасить, например...


 
Сергей М. ©   (2007-01-26 15:46) [1]

Юзеру нужны шашечки или ехать ?)


 
zdm ©   (2007-01-26 15:46) [2]


> Ламерюга   (26.01.07 15:41) 

Написать свой, в чем трабла то?


 
zdm ©   (2007-01-26 15:48) [3]

Создай форму, разукрась как хочешь, кинь компоненты для общения с дисками,директориями и файлами и юзай.


 
zdm ©   (2007-01-26 15:50) [4]

На страничке Win 3.1 замечательные стандартные компоненты, хотя юзеры вряд ли оценят твои старания. :)


 
Ламерюга   (2007-01-26 15:51) [5]

zdm видишь ли, в дизайн обычное не вписывается :)
К тому же я просто не хочу использовать то, с чем ни разу не работал (типа Outline eg)


 
clickmaker ©   (2007-01-26 15:57) [6]

TOpenPictureDialog из source\vcl\extdlgs.pas не подойдет для аналогии?


 
zdm ©   (2007-01-26 16:04) [7]

Если писать и разбираться с исходниками не хочется, тогда путь один-Yandex.ru. А зачем в обще разукрашивать-то? Так для примера, я сколько не пробовал всяких прибамбасин наводящих "красоту" на ОС все равно возвращался к стандартному виду, который продумали профессионалы. А все остальное -лишь временное эстетическое удовлетворение доставляет, но не надолго.


 
Ламерюга   (2007-01-26 16:14) [8]

clickmaker
а формочка к нему е? или она динамически создаётся?


 
Hero ©   (2007-01-28 06:13) [9]

Создай новый проект, в Public запиши переменную FileName:string;
на форму кинь компоненты типа
DirectoryListBox
FileListBox
сделай событие OnClick на FilelistBox в процедуре присвой FileName значение выбранного, добавь пару модальных кнопок типа ок и Cancel
обзови форму типа OpenDlgFrm
Сохрани в папку компонента типа как MyOpenDialogUnit,
создай новый компонент
типа такого

unit MyOpenDialog;

interface

uses
Controls, Classes, Messages, Windows, Graphics;

type
 TMyOpenDialog = class(TComponent)
 private
   FFileName: String;
   Procedure SetFileName(value:string);
 protected
   { Protected declarations }
 public
   constructor Create(AOwner: TComponent); override;
   destructor Destroy; override;
 published
   function Execute:boolean;
   property FileName:string read FFileName write SetFileName;
 end;

procedure Register;

implementation

uses MyOpenDialogUnit;

procedure Register;
begin
 RegisterComponents("Dialogs", [TMyOpenDialog]);
end;

constructor TMyOpenDialog.Create(AOwner: TComponent);
begin
inherited Create(AOwner);
end;

destructor TMyOpenDialog.Destroy;
begin
 inherited Destroy;
end;

Procedure TMyOpenDialog.SetFileName(value:string) ;
begin
FFileName:=Value;
end;

function TMyOpenDialog.Execute:boolean;
var frm:TOpenDlgFrm;
begin
frm:=TOpenDlgFrm.Create(self);
frm.FileName:=FFileName;
if fileexists(FFileName) then
 frm.DirectoryListbox:=ExtractFilePath(FFileName);
if frm.ShowModal = 1 then
begin
   FFileName:=frm.FileName;
   result:=true;
end
else result:=false;
end;

end.


 
Hero ©   (2007-01-28 06:16) [10]

забыл в конце написать frm.free



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

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

Наверх




Память: 0.47 MB
Время: 0.043 c
1-1167054426
atruhin
2006-12-25 16:47
2007.02.18
Unit XXX implictly imported into package YYYY


4-1160374366
novill
2006-10-09 10:12
2007.02.18
Как программно снять/поставить блокировку компьютера?


3-1164260869
ValexWeb
2006-11-23 08:47
2007.02.18
Как с помощью компоненты TABLE узнать номер текущей отображаемой


3-1164621424
moybobr
2006-11-27 12:57
2007.02.18
Параметры в ADO


2-1170402426
bmb58
2007-02-02 10:47
2007.02.18
Компонент Delphi





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский