Форум: "Начинающим";
Текущий архив: 2007.10.28;
Скачать: [xml.tar.bz2];
Вниз"Сохранить" и "Сохранить как..". Найти похожие ветки
← →
Vitek2 © (2007-10-05 18:04) [0]Подскажите как сделать так чтобы кнопки "Сохранить" и "Сохранить как.." работали правельно, как например в блакноте. Вот я открыл прогу, написал что-нибудь в RichEdit. Если я нажимаю "сохранить" и файл уже сохранён на диске то изменения сохраняются в него же, а если файла нет на диске то Появляется диалоговое окно SaveDialog.
И ещё вопрос:У меня на форме есть компонент PageControl, на каждой вкладке имеется компонент RichEdit. мне надо сделать так, чтобы в заголовке вкладки отображалось имя файла(не полный путь, а только имя). А при перемещениие между вкладками в StatusBar отображался полный путь файла.
← →
KSergey © (2007-10-05 18:15) [1]Хотелось бы узнать что именно из перечисленного вами уже сделано и в каких именно местах возникли затруднения.
К стати, еще у преподавателя вполне можно спросить.
← →
stone © (2007-10-05 18:16) [2]
> Вот я открыл прогу, написал что-нибудь в RichEdit. Если
> я нажимаю "сохранить" и файл уже сохранён на диске
Какой файл? Никакой связи с каким-либо файлом ты не указал.
> мне надо сделать так, чтобы в заголовке вкладки отображалось
> имя файла(не полный путь, а только имя). А при перемещениие
> между вкладками в StatusBar отображался полный путь файла.
>
В чем именно сложность?
← →
Virgo_Style © (2007-10-05 18:22) [3]напр., поле FileName: string;
при создании нового FileName:="";
при загрузке FileName:=имя файла.
при сохранении, если FileName = "" - запросить имя.
← →
Vitek2 © (2007-10-05 19:03) [4]
if FileName="" then
begin
SaveDialog1.Execute;
TRichEdit(PageControl1.ActivePage.Tag).Lines.SaveToFile(SaveDialog1.FileName);
end
else TRichEdit(PageControl1.ActivePage.Tag).Lines.SaveToFile(FileName);
end;
Вот. Я открыл файл. Нажимаю сохранить, всё равно выскакивает окно SaveDialog. На даже если нажимаю "Отмена". Сохраняет правельно. Где ошибка?
← →
Kolan © (2007-10-05 19:05) [5]> всё равно выскакивает окно SaveDialog
Прийди отладчиком
← →
Вася Правильный (2007-10-05 19:07) [6]не вижу открытия
← →
Vitek2 © (2007-10-05 19:16) [7]Я открыл через Файл -> Открыть. В RichEdit Заносится информация.
← →
OSman © (2007-10-05 19:28) [8]SaveDialog1.Execute возвращает True при "Сохранить" и False при "Отмена"
← →
Priority (2007-10-05 19:33) [9]Новый
Memo.Lines.Clear;
FileName := "";
Открытие
if OpenDialog.Execute then
begin
Memo.Lines.LoadFromFile(OpenDialog.FileName);
FileName := OpenDialog.FileName;
end;
Сохранениеif FileName="" then
if SaveDialog.Execute then
begin
Memo.Lines.SaveToFile(SaveDialog.FileName);
FileName := SaveDialog.FileName;
end
else
else
Memo.Lines.SaveToFile(FileName);
← →
Anatoly Podgoretsky © (2007-10-05 19:35) [10]
> Vitek2 © (05.10.07 19:03) [4]
FileName и SaveDialog1.FileName разные вещи, не говоря уже о других ошибках.
← →
Vitek2 © (2007-10-05 20:09) [11]
if FileName="" then;
if SaveDialog1.Execute then
begin
TRichEdit(PageControl1.ActivePage.Tag).Lines.SaveToFile(SaveDialog1.FileName);
FileName:=SaveDialog1.FileName;
end
else
TRichEdit(PageControl1.ActivePage.Tag).Lines.SaveToFile(FileName);
end;
Все равно SaveDialog появяется.
← →
b z (2007-10-05 20:16) [12]if FileName="" then->;<-
← →
Vitek2 © (2007-10-05 20:20) [13]Вот блин. Опять невнимателен.
← →
Вася Правильный (2007-10-05 20:30) [14]такое ощущение, что ты нас за компилятор принимаешь
а сам в блокноте пишешь, не имея дельфи
← →
Плохиш © (2007-10-05 21:16) [15]
> Вася Правильный (05.10.07 20:30) [14]
> такое ощущение, что ты нас за компилятор принимаешь
А что, есть сомнения?
← →
Vitek2 © (2007-10-05 21:36) [16]Компилятор мочлал.
PageControl1.ActivePage.Caption:=SaveDialog1.FileName;
В заголовок вкладки выводится полное имя файла(с путём). Как сделать так чтобы выводилось только имя файла.(xxx.txt).
← →
Virgo_Style © (2007-10-05 21:52) [17]Vitek2 © (05.10.07 21:36) [16]
ExtractFileName
← →
Denis_ © (2007-10-06 11:08) [18]
> Компилятор мочлал.
А что он должен был делать?! Орать тебе : "ТЫ ДОПУСТИЛ ЛОГИЧЕСКУЮ ОШИБКУ!!!"?!
← →
TIF © (2007-10-06 11:30) [19]
> как например в блакноте
Афтар! Научись гофорить, а потом остальное приложится.
Кстати, есть много статей в инете, про создание небольших текстовых редакторов-примитивов (типа "блокнот"), с исходниками и подробным объяснением.
Так что www.ya.ru -> go!
← →
Gydvin © (2007-10-06 13:58) [20]Да блин чего тут сложного, просто подумать чуть.
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, ComCtrls;
type
TForm1 = class(TForm)
Save: TButton;
SaveAs: TButton;
RichEdit1: TRichEdit;
SaveDialog1: TSaveDialog;
procedure SaveClick(Sender: TObject);
procedure SaveAsClick(Sender: TObject);
private
{ Private declarations }
FileName:string;
public
{ Public declarations }
end;
var
Form1: TForm1;
implementation
{$R *.dfm}
procedure TForm1.SaveClick(Sender: TObject);
begin
if filename="" then
begin
saveas.Click;
end else
begin
richedit1.Lines.SaveToFile(filename);
end;
end;
procedure TForm1.SaveAsClick(Sender: TObject);
begin
SaveDialog1.FileName:="";
if (SaveDialog1.Execute)and(SaveDialog1.FileName<>"") then
begin
filename:=SaveDialog1.FileName;
richedit1.Lines.SaveToFile(filename);
end;
end;
end.
← →
Vitek2 © (2007-10-08 00:09) [21]Значит на форме имеется компонент PageControl. Мне нужно что бы при перемещениее между вкладками компонента в строку состояния выводился путь файла выбраной вкладки.
При открытии файла путь выводится, а вот чтобы он изменялся при перемещении.. что-то не выходит.
← →
Anatoly Podgoretsky © (2007-10-08 00:23) [22]> Vitek2 (08.10.2007 00:09:21) [21]
OnChange
← →
Vitek2 © (2007-10-08 00:28) [23]Я знаю что событие OnChange. А вот как получить имя файла с выбраной вкладки.
TRichEdit(PageControl1.ActivePage.Tag).Lines.....;
Что мне тут нужно дописать или исправить?
← →
Vitek2 © (2007-10-08 00:28) [24]Удалено модератором
← →
Gydvin © (2007-10-08 07:37) [25]Все еще не думаем?
...
private
{ Private declarations }
Names:array of string;
filename:string;
public
...
procedure TForm1.PageControl1Change(Sender: TObject);
begin
caption := Names[pagecontrol1.ActivePageIndex];
end;
procedure TForm1.Button1Click(Sender: TObject);
begin
PageControl1.Pages[0].Caption:=extractfilename(filename);
setlength(names,length(names)+1);
names[length(names)-1):=filename;
end;
Страницы: 1 вся ветка
Форум: "Начинающим";
Текущий архив: 2007.10.28;
Скачать: [xml.tar.bz2];
Память: 0.51 MB
Время: 0.054 c