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

Вниз

Стандартные диалоги Открыть/Сохранить файл...   Найти похожие ветки 

 
Nimda   (2002-10-25 15:26) [0]

Как на WinApi вызвать стандартное окно Открытия/Сохранения файла и получить от него имя выбранного/сохраненного файла? Небольшой пример очень приветствуется :)
Заранее спасибо!


 
k   (2002-10-25 15:58) [1]

конечно пример не приведу, в универе я

но посмотрите хелп по ф-циям GetOpenFileName и
GetSaveFileName(какая-то структура);

делает тоже самое, что SaveDialog.Execute
а имя файла можно достать из структур туда передаваемой....


 
Nimda   (2002-10-25 16:13) [2]


program dialog;

uses
Windows,
CommDlg;

var
f: OPENFILENAME;
filename : string;

begin
ZeroMemory(@f, sizeof(OPENFILENAME));
f.lStructSize := sizeof(OPENFILENAME);
f.hwndOwner := 0;
f.lpstrFilter := nil;
f.lpstrFile := PChar(filename);
f.nMaxFile := MAX_PATH;
if GetOpenFileName(f) then
MessageBox(0, PChar(filename), "", mb_ok);
end.

Теперь возникла другая проблема - диалог не показывается :( Что делать???


 
k   (2002-10-26 12:36) [3]

я вчера поставил эксперимент:

uses CommDlg;
procedure TForm1.Button1Click(Sender: TObject);
var OFStruct:OPENFILENAME;
begin
ZeroMemory(@OFStruct,SizeOf(OFStruct));
OFStruct.lStructSize := SizeOf(OFStruct);
GetOpenFileName(OFStruct);
end;


и диалог показался......
щас у меня D5 и WinXP

а когда я писал под Win98 (давно это было)
я устанавливал в поле lFlags бит OFN_EXPLORER




 
Nick N A   (2002-10-27 08:05) [4]

Зачем придумывать велосипед ?
пишешь FileOpenDialog1.Execute,
нажимаешь Ctrl + Нажимаешь на слово Execute мышкой,
и изучаешь исходник. можешь скопировать его,
класс обьявить выше чем TFORM, и выбрасывать ненужное.



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

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

Наверх




Память: 0.45 MB
Время: 0.008 c
3-27881
GLUKAS
2002-11-21 14:13
2002.12.09
Можно ли отследить выполнение запроса???


1-28069
laser
2002-11-27 18:57
2002.12.09
Анализ предложения


14-28292
Snap
2002-11-19 18:58
2002.12.09
Импорть


4-28354
Nikolas SHmuS
2002-10-27 12:36
2002.12.09
NetMessageBufferSend


3-27809
danilka
2002-11-22 09:37
2002.12.09
Как програмно поменять в БДЕ конфигурацию драйвера?





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