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

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

Как сделать Button1.Enabled:=true; в такой ситуации? [D7, WinXP]


Страницы:   1 2

Apocalepse ©   (2004-06-12 22:00:00) 

Привецтвую мастера. Вот тот код мне посоветовали чтобы мой текстовый редактор
мог открывать фалы если его поставить текстовым редактором по умолчанию.
procedure Tmain.FormCreate(Sender: TObject);
begin
if (ParamCount >= 1) and FileExists(ParamStr(1)) then
Text.Lines.LoadFromFile(ParamStr(1));
FName := (ParamStr(1));

Но теперь возникла новая проблема. У меня в редакторе кнопка "сохранить"
находиться в состоянии Disabled. В состояние Enabled она переходит лишь тогда,
когда открываеться файл через OpenDialog или сохраняеться через SaveDialog.
Так же мне понадобилось чтобы она переходила в Enabled-состояние после
того, как ей открыли файл как редактором по умолчанию т.е. с помощью кода
приведенного выше. Но как то сделать? Вот такая штука:
procedure Tmain.FormCreate(Sender: TObject);
begin
if (ParamCount >= 1) and FileExists(ParamStr(1)) then
Text.Lines.LoadFromFile(ParamStr(1));
FName := (ParamStr(1));
Button1.Enabled:=true;

Button1 - это кнопка "сохранить".
Подскажите плизз куда и как вписать код Button1.Enabled:=true;в таком случае?


Apocalepse   (2004-06-13 14:11:00) [1]

Да все понятно щас все пашет уже как папа карло!


Gero   (2004-06-13 12:35:00) [2]


> Но от этого заработает Фильтр или нет?

Фильтр только отвечает за отображение файлов в окошке выбора файла.
А что DefaultExt делает, я написал. Так что не понятно?


Apocalepse   (2004-06-13 12:25:00) [3]


> гм......... попробуйте

Можно на со мной ты :-) ато както неудобно даже :-)


Apocalepse   (2004-06-13 12:22:00) [4]

Но от этого заработает Фильтр или нет?
> Я ведь советовал посмотреть пример редактора в RxLib
А что такое RxLib.


> И попробуйте перевести с английского DefaultExt...

Default типа впрде по умолчанию а Ext - разширение или настройка.... Короче говоря это Разширение даваемое по умолчанию.


Gero   (2004-06-13 12:16:00) [5]


> Apocalepse ©   (13.06.04 12:12)

TOpenDialog.DefaultExt
Писать можно где угодоно, хоть в DesignTime.
Сохранять можно будет не только в txt, но если другое расширение не указано, то добавит к FileName еще и 'txt'.


KilkennyCat   (2004-06-13 12:16:00) [6]

Я ведь советовал посмотреть пример редактора в RxLib.
Если бы посмотрели - такие бы вопросы не задавали.


KilkennyCat   (2004-06-13 12:14:00) [7]

гм......... попробуйте и так и этак. И попробуйте перевести с английского DefaultExt...


Apocalepse   (2004-06-13 12:12:00) [8]

И что тогда у меня только в тхт будет сохранять? Или тогда фильтр заработает? И где это
> DefaultExt := 'txt';
надо написать? В Процедуре сохранения или в любом месте кода?


KilkennyCat   (2004-06-13 12:11:00) [9]


> Gero ©   (13.06.04 11:21) [17]


равнозначно.


Gero   (2004-06-13 11:21:00) [10]


> нужно указать свойство
>
> DefaultExt - *.txt

DefaultExt := 'txt';


KilkennyCat   (2004-06-13 11:16:00) [11]

нужно указать свойство

DefaultExt - *.txt


jack128   (2004-06-13 11:13:00) [12]


> , но без
> разширения. Тоесть нужно самому в имени писать его. Например
> test.TXT


> Может где то что то надо в true поставить в ObjectInspector`e?
не true,  а прописать свойство defaultExt


Apocalepse   (2004-06-13 10:59:00) [13]

Не работет. Если пишу ваш код
SaveDialog.Filter := 'Текстовые|*.txt';
В самой процедуре сохранинея или просто в любом другом месте кода, филтр вообще
не появляется. А вот если настраиваю в редакторе фильтра, то в окне SaveDialog`a
фильтр то появляется. Но я вот дупксти написал все то же в нем

SaveDialog.Filter := 'Текстовые|*.txt';

Вот выбираю я "текстовые" при сохранении и он конечно файл сохраняет, но без
разширения. Тоесть нужно самому в имени писать его. Например test.TXT
Вот так блин. Может где то что то надо в true поставить в ObjectInspector`e?


Apocalepse   (2004-06-13 10:44:00) [14]

Спасибо, сейчас попробую.


KilkennyCat   (2004-06-13 01:01:00) [15]

можно и по другому:

savedialog1.Filter := 'Текстовые|*.txt';


Apocalepse   (2004-06-13 00:09:00) [16]

Что написать здесь? Весь код!!?? Или что... Я про фильтр то говорил, я его в редакторе фильтров делал, а что можно подругому?


KilkennyCat   (2004-06-12 23:20:00) [17]

напишите его здесь, а мы поправим...

А вообще, искренне советую установить RxLib. Там просто идеальный пример тестового редактора. Сам когда-то использовал как учебный материал.


Apocalepse   (2004-06-12 23:16:00) [18]

KilkennyCat Ох точно! ГениальнО! Спасибо.
У меня тогда еще аопрос. У меня в SaveDialog не работает Filter
Я уж его и так и дак, и в хэлпе смотрел как правильно писать. Блин.... может чего подскажете? Как его правильно настроить.


KilkennyCat   (2004-06-12 23:16:00) [19]

ошибся, вот так:

Text.Save
begin
 ...
flag := false;
ButtonSave.Enabled := FLag;
...
end;


KilkennyCat   (2004-06-12 23:14:00) [20]

но и там желательно поставить флажок о первоначальной загрузке файла.

примерно так:

var
 FLoadNew : boolean;
 ...

после
Text.Lines.LoadFromFileнужно
FLag := false;

...

Text.onChange
begin
 ...
 ButtonSave.Enabled := FLag;
 FLag := true;
 ...
end;

Text.Save
begin
 ...
 flag := false;
 ...
end;
begin


Страницы:   1 2

Наверх

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