диалог открытия файла

Правила форума
При написании вопроса или обсуждении проблемы, не забывайте указывать версию Clarion который Вы используете.
А так же пользуйтесь спец. тегами при вставке исходников!!!
Ответить
Гость

Сообщение Гость »

Киньте кто-нибудь процедуру, которая показыает окно с именами файлов как например это делается в Кларионе когда надо открыть файл на редактирование. :shuffle:
Написал: shako(41)
Гость

Сообщение Гость »

почитай в Help использование функции FILEDIALOG

Andrew Myalin
andrew@arsis.ru
http://mavcla.arsis.ru (MAV Direct ODBC)
ICQ: 10659412
Yahoo group: clarion@yahoogroups.com
Написал: ClaList(2)
Гость

Сообщение Гость »

:cry2: так ведь нет в досовом Кларионе никаких диалогов
Написал: shako(41)
Гость

Сообщение Гость »

Hello Форум,

Почитал я The Fucking Manual и вот что увидел
:)

The FILEDIALOG procedure displays Windows standard file choice dialogs and returns the file chosen by the user in the file parameter.
Any existing value in the file parameter sets the default file choice presented to the user in the file choice dialog.

то есть если сделать следующим образом

str1 = 'D:\home\1.xls'
SETPATH('D:\home\')
FILEDIALOG('Выберите файл', str1, 'файлы Excel!*.xls', FILE:LongName + FILE:Save)

то в строке(окне) "имя файла" диалога открытия файла должна быть строка "1.xls"

но когда открывается диалог, то в окне пусто!!!
хотя по идее должно быть "the default file choice presented to the user in the file choice dialog."

помогите разобраться, плиз!
:)

--
Best regards,
Иван mailto:shkmail@inbox.ru

(Добавление)

Можно посмотреть еще dosfilelookup в шаблонах abcontrl.tpw или control.tpw

--
Best regards,
gorky mailto:gorky@sv3.net.ua
Почитал я The Fucking Manual и вот что увидел
:)
так видно читал
The FILEDIALOG procedure displays Windows standard file choice dialogs and returns the file chosen by the user in the file parameter.
Any existing value in the file parameter sets the default file choice presented to the user in the file choice dialog.
а надо было на два обзаца выше
str1 = 'D:\home\1.xls'
file The label of the string variable to receive the selected filename(s).
я здесь вижу только имя файла(ов) а где здесь слово path
SETPATH('D:\home\')
FILEDIALOG('Выберите файл', str1, 'файлы Excel!*.xls', FILE:LongName + FILE:Save)
то в строке(окне) "имя файла" диалога открытия файла должна быть строка "1.xls"
вообще возвращаясь к предыдущему письму - здесь из _трех_ строчек кода в этом случае эксперименту принадлежала одна str1='D:\home\1.xls' уж с одной то можно было попробовать, если в каждом справочном руководстве видишь даже не просто фигу а "Fucking Manual"
но когда открывается диалог, то в окне пусто!!!
хотя по идее должно быть "the default file choice presented to the user in the file choice dialog."
еще раз "файла по умолчанию"
помогите разобраться, плиз!
:)
з.ы. еще раз на предыдущую тему
Если у Вас найдется The Fucking Manual посвященный шаблонам Синявского, то я его с удовольствием Read.
не разу не приходилось нажимать f1 касательно шаблонов там по-моему достаточно #PROMPT и #DISPLAY, а вот как они устроены смотреть еще никому не запрещалось. ЗАгляни может немного полезной информации найдешь

--
Всего наилучшего, porutchik mailto:porutchik@mail.primorye.ru
http://personal.primorye.ru/porutchik/
---------------------------------------------------------
Советские боевые слоны - самые боевые слоны в мире!

(Добавление)
я здесь вижу только имя файла(ов) а где здесь слово path
ну, во первых, есть файл с помощью этого диалога выбрать, то в переменную str1 заносится ПОЛНОЕ имя файла. включая и диск и путь

а во вторых - вот другой простой пример

str1 = 'Example.xls'
FILEDIALOG('', str1, '', FILE:LongName+FILE:Save)

окно "имя файла" стандартного диалога Windows пустое!
может на поведение диалога влияет версия Windows?
(у меня WinXP, C55EE(G))

=== не... сейчас проверял - под Windows 98 - тоже самое
не разу не приходилось нажимать f1 касательно шаблонов там по-моему достаточно #PROMPT и #DISPLAY, а вот как они устроены смотреть еще никому не запрещалось. ЗАгляни может немного полезной информации найдешь
ну и как посмотреть то, что может прояснить ситуацию с FILEDIALOG
ткните пальцем!
моя интуиция не так сильно развита

--
Best regards,
Иван

> то в строке(окне) "имя файла" диалога открытия файла должна быть строка
> "1.xls"

Ну так и ее и надо писать Str1='1.xls'.
Правда в строке будет стоять "1".
После выхода из FILEDIALOG нужно принудительно проверить/поставить расширение, на случай если юзер изменил название.

Игорь Веснин

Это само собой
спасибо, Игорь.

но проблема в том, что

str1 = 'filename.txt'
FILEDIALOG('aaa', str1, '', FILE:Save + FILE:LongName)
MESSAGE(str1)

не помещает в окно "имя файла" никакой строки, хотя если нажать "Отмена", то MESSAGE выведет именно "filename.txt"

я уже пробовал str1 по разному объявлять.. не помогает от версии Windows это не зависит...
Office Templates на это влиять не должны...

я в печали :(((

--
Best regards,
Иван
Написал: ClaList(2)
Гость

Сообщение Гость »

Вот врубился я в енто дело (типа под ДОС) и, поковыряв старые (7-8 летней выдержки) запасы сырцов, выковырял.

Тама 'MyApp' (типа имя главного КЛАшника) меняешь на свое (ну или ЛИБу делаешь - у меня в запасах балшая DLL делается с 290 кг сырцов). В обчем рихтуешь сам и суешь куда надо.

--
БЭст регардс, Струменский mailto:alx@lin.com.ua
--------------------
Как мяукнется - так и отгавкнется.
Написал: ClaList(2)
Гость

Сообщение Гость »

ПОМОГИТЕ!!!

вот исходники (прикреплены)

запускаем и видим:
в открывающемся окне выбора файла окно редактирования "Имя файла" - ПУСТОЕ!!!

кто-нибудь!
научите меня!
поправьте!
подскажите!

проверьте исходники, может у вас работает?

--
Best regards,
Иван mailto:shkmail@inbox.ru
Написал: ClaList(2)
Гость

Сообщение Гость »

проверьте исходники, может у вас работает?
А чего "может"? Работает ессесно. W2K eng sp3 + C55H
Ты бы хоть описАл свою среду - может ты на ME тренеруешся ;)

--
Best regards,
Vadym mailto:vadim@softcreator.com
ICQ: 82308757

Hello Vadym,

Извините
Забыл вложить файлы.
... + C55H
- может быть это может повлиять?
Ты бы хоть описАл свою среду - может ты на ME тренеруешся ;)
То есть у Вас окно "Имя файла" - НЕ ПУСТОЕ???
а содержит то самое значение переменной str1?

ну тогда я ничего не понимаю :((

Я упростил все до предела.
На скриншоте, что прикрепляю к письму, набран текст файла, а поверх него - результаты запуска этой программы.
сами исходники - также в аттаче

окно не содержит НИЧЕГО!!!
(не подумайте, что я стер текст в окне)

я эту непонятную вещь наблюдаю на:

WinXP, Win2K, Win98
все rus.

Clarion EE (G) + ШВС + OfficeTemplates v2.0

--
Best regards,
Иван

(Добавление)
может быть это может повлиять?
Не знаю, в принципе все может быть, G-релиз для меня был более глюкавым (хотя и слышал обратное).
В коде крамолы никакой нету.

--
Best regards,
Vadym

То есть у Вас окно "Имя файла" - НЕ ПУСТОЕ???
а содержит то самое значение переменной str1?

ну тогда я ничего не понимаю :((

--
Best regards,
Иван

Я как понимаю имеется ввиду С55G.
ШВС + OfficeTemplates v2.0 тут не причем.

У меня стоит С55H. Пример работает.
Да и вообще FILEDIALOG работает на всех операционках от Win95 до WinXP.
Клиенты на это не жаловались.

Вот что действительно проблема так то что если сохраняешься под разными форматами и пользователь изменил имя.

Ну например:
FILEDIALOG('Выберите файл', str1, 'файлы Excel!*.xls!текстовые!*.txt',
FILE:LongName +FILE:Save)
Str1 возвращает имя без расширения. А какой тип данных он выбрал не понятно.

Игорь Веснин <success@mail.iks.ru>

СПАСИБО ВСЕМ, КТО МЕНЯ ТЕРПЕЛ!

Проблема, которой я, наверно, всех задолбал вылечилась полным сносом Clarion-а.

До этого Clarion был установлен следующим образом:

Clarion 55
Patch 01
Patch 02
Patch 03
...
Patch 06
Patch 07
ШВС
Office Templates

После сноса и установки

Clarion55
(голый)

глюк исчез
не проявился он и после

Patch 01-07(FULL) - одним апдейтом
Patch 08
ШВС
Office Templates

Отсюда делаю вывод, что причина могла заключаться именно в заплатках от 01 до 07

а поскольку на нескольких машинах я устанавливал Clarion именно в такой (без Patch 01-07 FULL) последовательности, то и глюк проявлялся на всех на них

вот.
:)

--
Best regards,
Иван
Написал: ClaList(2)
Ответить