File name: [Document.rtf ]
Save as type: [Rich Text Format (RTF) ]
SaveDialog - как "на лету" изменять расширение файла?
Я пробовал сделать функцию, перехватывающую OnTypeChange, в которой пробовал менять SaveDialog1->FileName, но это не работает. (Хотя зачем же тогда существует OnTypeChange?)
Может кто-нибудь знает как это сделать?
.
У тебя открыт диалог - в нем ты меняешь тип файла... и у выбранного файла менялось расшерение - а зачем так сложно
Цитата:
Originally posted by SEDEGOFF
Чето я не понял
У тебя открыт диалог - в нем ты меняешь тип файла... и у выбранного файла менялось расшерение - а зачем так сложно
Чето я не понял
У тебя открыт диалог - в нем ты меняешь тип файла... и у выбранного файла менялось расшерение - а зачем так сложно
Нет, здесь нет ничего сложного. Посмотри как это работает, например, в WordPad:
Диалог Save As:
Код:
Меняем тип файла (с помощью dropdown list) на "Text Document":
Код:
File name: [Document.txt ] <-- Меняется автоматически
Save as type: [Text Document ]
Save as type: [Text Document ]
И имя документа само изменилось с "Document.rtf" на "Document.txt".
Так как же это делается?
Цитата:
Originally posted by SLA
Нет, здесь нет ничего сложного. Посмотри как это работает, например, в WordPad:
Диалог Save As:
Меняем тип файла (с помощью dropdown list) на "Text Document":
И имя документа само изменилось с "Document.rtf" на "Document.txt".
Так как же это делается?
Нет, здесь нет ничего сложного. Посмотри как это работает, например, в WordPad:
Диалог Save As:
Код:
File name: [Document.rtf ]
Save as type: [Rich Text Format (RTF) ]
Save as type: [Rich Text Format (RTF) ]
Меняем тип файла (с помощью dropdown list) на "Text Document":
Код:
File name: [Document.txt ] <-- Меняется автоматически
Save as type: [Text Document ]
Save as type: [Text Document ]
И имя документа само изменилось с "Document.rtf" на "Document.txt".
Так как же это делается?
Свойство FilterIndex у SaveDialog
Цитата:
Originally posted by gray_k
Свойство FilterIndex у SaveDialog
Свойство FilterIndex у SaveDialog
Нет, дело здесь не только в FilterIndex. Но я уже нашел решение. :)
Если кому интересно, то делается это вот так:
Код:
void __fastcall TForm1::SaveDialog1TypeChange(TObject *Sender)
{
char szFileName[MAX_PATH];
const HWND hSaveDlg = GetParent(SaveDialog1->Handle);
const HWND hFileEdit = GetDlgItem(hSaveDlg, 0x0480);
GetWindowText(hFileEdit, szFileName, MAX_PATH);
AnsiString anFileName = (AnsiString)szFileName;
if (SaveDialog1->FilterIndex==1)
anFileName = ChangeFileExt(anFileName,".rtf");
else anFileName = ChangeFileExt(anFileName,".txt");
SetWindowText(hFileEdit, anFileName.c_str());
}
{
char szFileName[MAX_PATH];
const HWND hSaveDlg = GetParent(SaveDialog1->Handle);
const HWND hFileEdit = GetDlgItem(hSaveDlg, 0x0480);
GetWindowText(hFileEdit, szFileName, MAX_PATH);
AnsiString anFileName = (AnsiString)szFileName;
if (SaveDialog1->FilterIndex==1)
anFileName = ChangeFileExt(anFileName,".rtf");
else anFileName = ChangeFileExt(anFileName,".txt");
SetWindowText(hFileEdit, anFileName.c_str());
}