Просмотр картинки по клику во внешнем пр&#1080

malica

New Member
Здравствуйте!

:sign0085:, пожалуйста, вот с этим вопросом:

FileOpen (Connection Name, File Name, cRead | cWrite | cRandom [,cAppend [,cASCII])

Что такое Connection Name? И как его прописать в программе?
Нужно по клику по форме\кнопке открыть картинку\видео во внешнем приложении (ассоциированным с ним, а не в самой составляемой проге в бейсике).

FileOpen (c1,"Shema.jpg",cRead ,,)
FileRead (c1)

Помогите, так как картинка большая - ее нужно мне открыть не в проге (так как в Basic4ppc скролинг отсутствует), а во внешнем приложении, что рассмотреть ее можно было!
 

Sergey Kravchenko

Active Member
Licensed User
Здравствуйте!

:sign0085:, пожалуйста, вот с этим вопросом:

FileOpen (Connection Name, File Name, cRead | cWrite | cRandom [,cAppend [,cASCII])

Что такое Connection Name? И как его прописать в программе?
Нужно по клику по форме\кнопке открыть картинку\видео во внешнем приложении (ассоциированным с ним, а не в самой составляемой проге в бейсике).

FileOpen (c1,"Shema.jpg",cRead ,,)
FileRead (c1)

Помогите, так как картинка большая - ее нужно мне открыть не в проге (так как в Basic4ppc скролинг отсутствует), а во внешнем приложении, что рассмотреть ее можно было!
Привет.
Я понимают так что connection name это как в Си - поток данных. Проще говоря "имя соединения", удобно не писать всегда имя файла, а указывать имя потока (дескриптор файла).

Для запуска внешнего приложения есть команда shell. Может этому внешнему приложению сообщить в качестве параметра имя файла?

Я пока еще с большими картинками не работал, но думаю что как-то можно решить эту проблему.
 

malica

New Member
Использование Shell сами понимаете, что неудобно - запускать программу а потом из нее открывать картинку....
Все таки плохо поняла про дескрипторы программ, хоть и полазила по этому понятию:
Каждому файлу на диске соответствует один и только один индексный дескриптор файла, который идентифицируется своим порядковым номером - индексом файла. Это означает, что число файлов, которые могут быть созданы в файловой системе, ограничено числом индексных дескрипторов, которое либо явно задается при создании файловой системы, либо вычисляется исходя из физического объема дискового раздела.
И все же как это применить в моем случае:signOops: ?

При выполнении вот этой процедуры:

Sub Image4_Click
FileOpen (c1,"Shema.jpg",cRead ,,)
FileRead (c1)
End Sub

Вот что пишет:

Error description:
Item has already been added. Key in dictionary: 'c1' Key being added: 'c1'
В файле справки про этот коннекшин нейм сказано:
Connection name can be any word starting with a letter.
Помогите правильно задать мне этот дескриптор:sign0085:


Не создавая новую тему хотелось бы еще задать пару вопросов:

1) функции скролинга не присутствует в этом усеченном варианте бейсика? Если форма например больше размера экрана КПК, то линейки прокрутки не появляются? Очень кажется неудобно :(

2) А можно как то заставить этот бейсик считать только до четвертого знака после запятой? В VB6 помню я ставила As Currency и он дальше 4 знака после запятой результат не выводил. А то очень неудобно выводить результат расчета в Lable, когда там слишком много цифр после этой запятой. Только обманным путем действовала - просто ограничивала размер Лейбла, но это лишало меня возможности использовать команду ( lblD4.Text = D4 & " т/ч" ) - эти т/ч приходилось в другой Лейбл загонять отдельно - неудобно. Может я какую-то возможность сократить эти цифры упускаю?:confused:
 

Sergey Kravchenko

Active Member
Licensed User
Насчет дескриптора - надо делать филеклоузе, тогда не будет ругаться что файл уже открыт. :)

Попробую объяснить проще - каждому открытому файлу присваивается свой уникальный номер - дескриптор, с ним и надо работать.

В установочном пакете есть пример - смотрелка картинок (Album), можно ею воспользоваться.

Скролинг есть, например в многостраничной текстовой форме.

Округлять лучше всего в самом конце вычислений - так повышается точность расчета. Используй Round.

Не понятно, что значит усеченная версия. Если у тебя триальная, то там всё также, тока компилить в екзешник не получится.

Удачи.
 
Last edited:

Sergey Kravchenko

Active Member
Licensed User
Продолжу тему скроллинга картинок.
Есть один вариант. Если нет возможность крутить картинку обычными средствами, то можно попробовать необычными.
Например, есть примочка библиотека HtmlView. Создаешь файл пустой документ html, где прописываешь ссылку на рисунок и отображаешь со всеми прокрутками сразу.:)
 

anklive

New Member
Теоретически если HtmlView передать ссылку на картинку сразу, то он должен её показать и без вспомогающего "index.html".
 
Top