C++ Builder
| Главная | Уроки | Статьи | FAQ | Форум | Downloads | Литература | Ссылки | RXLib | Диски |

 
Нужна помощь!, с выводом
Parasit
  Отправлено: 23.01.2007, 12:42


Дежурный стрелочник

Группа: Участник
Сообщений: 68



Опять в тупике!

Помогите если моно с примером:

Я не уверен но помоему в С++ есть оператор вывода на экран
(или как он правильно?) — Printf помоему!

Ход моих мыслей такой :

Значит есть переменная если она не равна нулю то вывести на экран!

вот как на синтаксис СИ перевести "вывести" ненаю
и куда можно выводить тоже незнаю

Заранее всем Спасибо!
Valdemar
Отправлено: 23.01.2007, 14:53


Мастер участка

Группа: Участник
Сообщений: 433



Понятие "Вывести на экран" довольно растяжимое. Поэтому конкретизируйте, что вы хотите получить.
Функция printf используется для вывода текста на экран в DOS и консольных приложениях.
В windows-приложениях текст можно вывести на экран с использованием Label, Memo, Edit и др. подобных компонентов, либо воспользоваться функциями TextOut, DrawText.
Parasit
Отправлено: 23.01.2007, 23:05


Дежурный стрелочник

Группа: Участник
Сообщений: 68



А значит так хм!

Тогда не подскажете можно ли
передать значение переменной на вторую форму?

если да то как?

и если есть справка буду очень признателен!

nawok78
Отправлено: 24.01.2007, 10:19


Станционный диспетчер

Группа: Участник
Сообщений: 115



Допустим у тебя Form1 и Form2
соответственно Unit1 и Unit2
чтобы в модуле Unit1 изменить какой либо компонент на Form2 -

CODE

#include "Unit2.h"
void __fastcall Form1::Button1OnClick (TObject * Sender)
{
  Form2->Label1->Caption = "ААААААААААААААААААААААААА";
}
Parasit
Отправлено: 24.01.2007, 17:23


Дежурный стрелочник

Группа: Участник
Сообщений: 68



С-Спасибо!!! может подскажете как быть с библиотеками
которых не хватает при переносен готовой программы
на другой комп
Evil_Smile
Отправлено: 24.01.2007, 17:33


Дежурный стрелочник

Группа: Участник
Сообщений: 57



Доброго Времени Суток!

Меню
Project->Options
на вкладке "Packages" убрать галочку "Build with runtime Packages"
на вкладке "Linker" убрать галочку "Use Dynamic RTL"
Parasit
Отправлено: 24.01.2007, 17:42


Дежурный стрелочник

Группа: Участник
Сообщений: 68



Делал это

он мне высказал

не может инициализировать БДЕ

- это уже другая проблема?
AVC
Отправлено: 24.01.2007, 17:54


Ветеран

Группа: Модератор
Сообщений: 1583



QUOTE

Здесь Вы найдете очень актуальные темы и интересные решения.
Советую скачать в первую очередь.  
Выдержки из содержания:
...
Как сделать, чтобы пpогpамма на CBuilder3, 4 не требовала .bpl, .dll?
Я переписываю BDE-приложение на другой компьютер, а оно отказывается работать. Что делать?
...

FAQ
Parasit
Отправлено: 24.01.2007, 18:10


Дежурный стрелочник

Группа: Участник
Сообщений: 68



СПасибо ща попробуем
Parasit
Отправлено: 24.01.2007, 23:01


Дежурный стрелочник

Группа: Участник
Сообщений: 68




Доступ к таблицам надо настроить не через псевдонимы (alias'ы), а через пути в
файловой системе. В идеале все таблицы храните в папке программы, тогда нужно
только указать имя таблицы без пути.
[I]

==========
Вот это как сделать?
aquanet sk
Отправлено: 25.01.2007, 00:39


Станционный диспетчер

Группа: Участник
Сообщений: 87



QUOTE (Parasit @ 23.01.2007, 23:05)
Тогда не подскажете можно ли
передать значение переменной на вторую форму?

А чуток посложнее можно вопрос?

как передать значение переменной, записанной в функции
void __fastcall TForm1::Button1Click(TObject *Sender)
{
int peremennaya;
}

на вторую форму?

ну типа на второй форме void funkciya(peremennaya)
{
что здесь писать, как вызвать? // и что писать в заголовочном и что писать после директив, ну типа extern ...
}

С обычными/своими функциями нет проблем, а вот с Билдеровскими __fastcall не получается.
Tantos
Отправлено: 25.01.2007, 02:12


Станционный диспетчер

Группа: Участник
Сообщений: 108



Вариантов масса. К примеру, через extern-переменную, переменную класса и т.п. Примеры:
1.
CODE

//unit1.cpp
TfrmMain *frmMain;
int k;

//unit2.cpp
TfrmSecond *frmSecond;
extern int k;

2.
CODE

//unit2.h
class TfrmRecept : public TForm
{
...
public:  // User declarations
       bool update;
...
}

//unit1.cpp
frmRecept = new TfrmRecept(this);
if( frmRecept )
 {
  frmRecept->update            = true;
...
 }
nawok78
Отправлено: 25.01.2007, 09:36


Станционный диспетчер

Группа: Участник
Сообщений: 115



идеале все таблицы храните в папке программы, тогда нужно
только указать имя таблицы без пути

--------------------------------------------------------------------

в главной форме объявляешь переменную АнсиСтринг Паф
в событиии ОнКрит главной формы

Паф = GetCurrentDir();

Квери1.ДатаБэйзНэйм = Паф

или

Тэйбл1.ДатаБэйзНэйм = Паф

- что у тебя там будет?
AVC
Отправлено: 25.01.2007, 09:53


Ветеран

Группа: Модератор
Сообщений: 1583



QUOTE (Parasit @ 24.01.2007, 22:01)
Доступ к таблицам надо настроить не через псевдонимы (alias'ы), а через пути в
файловой системе. В идеале все таблицы храните в папке программы, тогда нужно
только указать имя таблицы без пути.
[I]

==========
Вот это как сделать?

В TTable->DatabaseName записываете путь с завершающим /
Папка программы ExtractFilePath(Application->ExeName)

Вернуться в Вопросы программирования в C++Builder