Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > C++ Builder > как указать ему директорию по умолчанию?


Автор: Знак 28.7.2005, 14:13
открываю диалог для загрузки картинки...
Image1->Picture->LoadFromFile(OpenPictureDialog1->FileName);
Вопрос как указать ему директорию по умолчанию?
т.е. ту папку в которой лежит картинка.
в хэллпе лежит сл.
__property AnsiString InitialDir = {read=FInitialDir, write=SetInitialDir};
что с этим делать я не врубаюсь .. помогите чем можите. плиз..
раньше писал через ЛОАДФРОМФАЙЛ(ПУТЬДОРОГА).
А здеся как то не так.
Для тех кто непонял то это ВКЛ либ.

Автор: chaos 28.7.2005, 14:17
ну наверное надо сделать так
Код

OpenDialog1->InitialDir = "c:\\Мои документы\\";


ps и наверное тебе в другой раздел надо с таким вопросом smile

Автор: Знак 28.7.2005, 14:44
Цитата
  while (true)
  {
    if (OpenPictureDialog1->Execute())
    {
        OpenPictureDialog1->InitialDir = "c:\\D\\";  // не работает выкидыват в "мои документы"
        Image1->Picture->LoadFromFile(OpenPictureDialog1->FileName);

Кстати замечен глюк.

после использования ОНОГО диалога, др. кнопки с прямыми линками на картинки.
Не работают. т.к. в конец строки имяни картинки добавляется точка.
как это дело устранить... не знаю.
пробывал
OpenPictureDialog1->Options.Clear();
но это типа плохо описано в ХЭЛПЕ...
Подскажите че делать.

Автор: chaos 28.7.2005, 14:51
так ты че творишь?
Наверное надо сначало указать директорию по дефолту, тебе так не кажется?
Код

OpenPictureDialog1->InitialDir = "c:\\D\\";  
if (OpenPictureDialog1->Execute())
{
//.....
}


Цитата
после использования ОНОГО диалога, др. кнопки с прямыми линками на картинки.
Не работают. т.к. в конец строки имяни картинки добавляется точка.
как это дело устранить... не знаю.

а про это по подробнее

Автор: Знак 30.7.2005, 14:38
Код

[quote]
|-------------------------------------------------|
|Cannot open file c:\Temp\picture.bmp. |
|-------------------------------------------------|
[/quote]

Вот такую ошибку выкидывает после открытия картинок
через OpenPictureDialog1. т.е. в конце почемуйто точка появляется..

Цитата
после использования ОНОГО диалога, др. кнопки с прямыми линками на картинки.
Не работают. т.к. в конец строки имяни картинки добавляется точка.
как это дело устранить... Дума.ю.



---------
Radio Maximum foreWa ?

Автор: Fixin 30.7.2005, 16:24
приведи код, а то непонять, в чем проблема.

Автор: Знак 30.7.2005, 16:42
Тебе все исходники публиконуть? smile

Автор: comcon1 30.7.2005, 16:55
Сорри за оффтоп:
Нет, публикани все файлы, причем только четные строки.
Так понятнее будет.

Автор: Fixin 30.7.2005, 21:25
Я думаю, ты не сверхновый проект делашь, чтоб исходники прятать.

Автор: Знак 31.7.2005, 12:07
Цитата
void __fastcall TForm1::Button4Click()
{
char curdir[MAXPATH];
char *str1=current_directory(curdir);
char *str2="\\Temp\\picture\\";
char *s = new char[strlen(str1) + strlen(str2) + 1];
strcpy(s, str1);
strcat(s, str2);
  while (true)
  {
        OpenPictureDialog1->InitialDir = s;
    if (OpenPictureDialog1->Execute())
    {
        Image1->Picture->LoadFromFile(OpenPictureDialog1->FileName);
        break;
    }
//      else // user cancelled
//      break;
  }
}

ЭТО OpenPictureDialog1
Цитата
void __fastcall TForm1::Button3Click()
{
char curdir[MAXPATH];
char *str1=current_directory(curdir);
char *str2="\\Temp\\picture\\picture.bmp";
char *s = new char[strlen(str1) + strlen(str2) ];
strcpy(s, str1);
strcat(s, str2);
Image1->Picture->LoadFromFile(s);
}


Ну вот здесь если в программе открыть сначало через диалог
какую-нибудь картинку, то остальные прямые ссылки на кнопках
вырубаются, и пишется что мол Cant open file c:\Temp\picture\picture.bmp.
т.е. в конец строки ПУТЯ точку добвляет

Автор: comcon1 1.8.2005, 10:27
А ты проверь, правда ли он добавляет точку. Вот так:
Код

std::string str_test =std::string("[") +  OpenPictureDialog1->FileName + std::string("]");
messagedlg(str_test, ...); // не поню как она там вызывается

И напиши нам, что вышло. А то мне как-то не верится.
Модератор
перенесите в раздел BCB

Автор: ManiaK 1.8.2005, 10:48
Цитата(comcon1 @ 1.8.2005, 11:27)
перенесите в раздел BCB

Уже направил запрос, спят все smile

Автор: chipset 1.8.2005, 11:12
Модератор: шо хде кады каво? такой сон не дали досмотреть smile

Автор: Знак 3.8.2005, 10:51
Я попросил бы МОЙ топик никуда НЕпереносить
т.к. это мой ТОПИК

ТО comcon1 ,

Код

Для справки
if (MessageDlg("Update Record?", mtConfirmation, TMsgDlgButtons() << mbYes << mbNo, 0) = mrYes)

  Table1->Post();
else
  Table1->Cancel();


gde dostat std::string
pishet
[C++ Error] Unit1.cpp(120): E2316 'string' is not a member of 'std'
[C++ Error] Unit1.cpp(120): E2379 Statement missing ;
[C++ Error] Unit1.cpp(121): E2451 Undefined symbol 'str_test'

Автор: ManiaK 3.8.2005, 10:58
Цитата
Я попросил бы МОЙ топик никуда НЕпереносить
т.к. это мой ТОПИК

На нашем форуме.

Цитата
gde dostat std::string

Код

#include <string>

Автор: Знак 4.8.2005, 08:56
Да нашёл все
Там все ОК,
но потом пишет что

Unknow picture file extension (.bmpЖ)

Вобщем после каждой картинки
выкидывается новая ошибка с произвольным мусором в конце.
Там где я написал букву Ж.

т.е. типа того что ему не определить формат файла..

Автор: Знак 6.8.2005, 15:52
ОК все нашел всем спасибо!

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)