Отправляет email-рассылки с помощью сервиса Sendsay
  Все выпуски  

RusFAQ.ru: Программирование на C / C++


Информационный Канал Subscribe.Ru


RusFAQ.ru: Программирование на C / C++

Выпуск № 368
от 05.10.2003, 08:10

Администратор:
Имя: Nick.Box
URL: Информационный ресурс
ICQ: 365124
[censored], [censored]
О рассылке:
Задано вопросов: 1110
Отправлено ответов: 2542
Активность: 229.0 %
[Задать вопрос >>][Регистрация эксперта >>]
[Поиск в базе][Обсудить на форуме]


 Список экспертов, ответы которых опубликованы в данном выпуске

BOLT
Статус: Профессиональный
Общий рейтинг: 170.8
URL: Начинающему программитсу: софт, примеры, документация, Assembler, C & C++.
Телефон: Три раза АУ!
[Подробней >>]
Avl2k
Статус: Профессиональный
Общий рейтинг: 125.27
[Подробней >>]
Yuri Gordienko
Статус: Профессиональный
Общий рейтинг: 118.87
URL: Досконально о С++, оптимизация программ, советы
[Подробней >>]
 
Marouder
Статус: Профессиональный
Общий рейтинг: 122.87
URL: Первый Хабаровский Форум
Телефон: (4212) 21-93-65
[Подробней >>]
Vdr
Статус: Опытный
Общий рейтинг: 110.39
[Подробней >>]
Gibbel
Статус: Профессиональный
Общий рейтинг: 106.86
URL: Savage Metal Club - жизнь в стиле рок-н-ролл
Телефон: +7 901 710 3146
[Подробней >>]
 
Eugene
Статус: Профессиональный
Общий рейтинг: 106.28
URL: мощный файловый архив
[Подробней >>]
Apricot
Статус: Доверительный
Общий рейтинг: 105.76
[Подробней >>]
vitya
Статус: Профессиональный
Общий рейтинг: 108.07
[Подробней >>]


 Краткий перечень вопросов

Вопрос № 1097. Люди подскажите пожалуйста, Почему когда в scrollboxe отключаешь визуализацию линеек прокрутки, отпа... (ответов: 1)
Вопрос № 1098. Добрый вечер ВСЕМ. Я новичок в С++. Дан одномерный массив. Нужно написать ФУНКЦИЮ поиска мин. элемен... (ответов: 5)
Вопрос № 1099. Здравствуйте, уважаемые эксперты! Помогите пожалуйста разобраться. В моей программе должны формирова... (ответов: 2)
Вопрос № 1100. Здравствуйте Нужно в TListView залить фон каждого Item(а) определенным цветом? (Если можно кусочек к... (ответов: 2)
Вопрос № 1101. Здравствуйте, эксперты. Мои вопросы: 1)Как можно в Borland C++ 5.02 записать в какие-либо переменны... (ответов: 5)
Вопрос № 1102. Здравствуйте эксперты ! Как сделать подсказку (tooltip) ко кнопке, и ListCtrl. Пишу на VC++6... (ответов: 1)
Вопрос № 1103. НЕ понятна работа с классами... (ответов: 4)

Вопросов: 7, ответов: 20


 Вопрос № 1097

Люди подскажите пожалуйста,
Почему когда в scrollboxe отключаешь визуализацию линеек прокрутки, отпадает и сама возможность прокрутки, мож есть какие-то другие методы, а вообще мне надо прокрутить широкоугольную панараму.


Приложение:


Вопрос отправлен: 01.10.2003, 10:40
Отправитель: yar

[Следующий вопрос >>] [Список вопросов]

Отвечает BOLT

Приветствую Вас, yar!
Да... а зачем тогда их выключать?! Тоже самое: а почему когда снимаешь замок с двери, ее потом нельзя закрыть на ключ.

Да прибудет с тобой Великая Сила!
This message was created by EMan 1.5


Ответ отправлен: 02.10.2003, 17:50
Отправитель: BOLT


 Вопрос № 1098

Добрый вечер ВСЕМ.
Я новичок в С++.
Дан одномерный массив. Нужно написать ФУНКЦИЮ поиска
мин. элемента массива (через указатели).
Заранее большое спасибо.



Вопрос отправлен: 01.10.2003, 15:43
Отправитель: Andrey

[Следующий вопрос >>] [Список вопросов]

Отвечает BOLT

Приветствую Вас, Andrey!
Вот:

#include
using namespace std;
int main {
int matrix[10];
int min=0;
/*Вводим в массив данные*/
for (int i=0;i<=10;i++)
{
cout <<
"Введите " << i << "-й элемент массива. ";
cin >> matrix[i];
if (min > matrix[i]) // если введеное число меньше минимального
min = matrix[i];//тогда присваиваем его минмальному
}
cout <<
"Минимальный элемент массива: " << min << " ";
return 0;
}

Да прибудет с тобой Великая Сила!
This message was created by EMan 1.5


Ответ отправлен: 02.10.2003, 17:50
Отправитель: BOLT


Отвечает Avl2k

Добрый день, Andrey!
Можно, например, так: см. приложение.
С уважением, Avl2k.

Приложение:

Ответ отправлен: 01.10.2003, 16:32
Отправитель: Avl2k


Отвечает Yuri Gordienko

Доброе время суток, Andrey!
Где-то так
Успехов

Приложение:

Ответ отправлен: 01.10.2003, 16:02
Отправитель: Yuri Gordienko


Отвечает Marouder

Здравствуйте, Andrey!
В каком смысле "Через указатели". В смысле, что указатель на массив должен быть аргуметом функции.
И сказал бы, что тебе нужно, чтобы функция возвращала индекс этого элемента сам элемент, или указатель на него?
Вот тебе 3 функции для массива типа int для каждого из вариантов. Одна возвращает индекс, вторая значение минимального элемента, третья - указатель на него.
int MinArrayElementIndex(int* array,int NumberOfElements)
{
int minvalue=array[0],minindex=0;
for(int x=1;x{
if (array[x]}
return minindex;
}

int MinArrayElement(int* array,int NumberOfElements)
{
int minvalue=array[0];
for(int x=1;x{
if (array[x]}
return minvalue;
}
int* PtrMinArrayElement(int* array,int NumberOfElements)
{
int* minvalue=&array[0];
for(int x=1;x{
if (array[x]<*minvalue) minvalue=&array[x];
}
return minvalue;
}


Ответ отправлен: 02.10.2003, 08:37
Отправитель: Marouder


Отвечает Vdr

Здравствуйте, Andrey!
Не совсем понял, что значит "через указатели"...Попробуй так:
int A[100]//массив с числами
int s=0;
int i;
i=A[0];
while(s<100)
{
if(A[s]s++;
}
//в i минимальное значение

Ответ отправлен: 02.10.2003, 11:51
Отправитель: Vdr


 Вопрос № 1099

Здравствуйте, уважаемые эксперты!
Помогите пожалуйста разобраться.
В моей программе должны формироваться почтовые сообщения с прикреплёнными файлами в программе Outlook Express. Когда прикрепляется 1 файл, используется такой кусок:
MapiFileDesc attachment;
attachment.lpszPathName = Attach.c_str();
message.lpFiles = &attachment;
А потом вызывается MAPISendMail:
DWORD dwErr = lpfnSendMail(0, NULL, &message, API_LOGON_UI , 0);
И все работает.
Но когда нужно прикрепить несколько файлов, я их прикрепляю так:
MapiFileDesc attachment[50];
//здесь идёт цикл наполнения массива строк путями
...
for(int i = 0; i < j; i++)
{
C = Paths[i];
attachment[i].lpszPathName = C.c_str();
}
message.nFileCount = 50;
message.lpFiles = &attachment[50];
А потом вызывается MAPISendMail:
DWORD dwErr = lpfnSendMail(0, NULL, &message, API_LOGON_UI , 0);
Но при этом ничего не работает.
Объясните мне пожалуйста, где и что я неправильно сделал.



Вопрос отправлен: 01.10.2003, 16:49
Отправитель: Alexandr

[Следующий вопрос >>] [Список вопросов]

Отвечает Gibbel

Приветствую Вас, Alexandr!
А что ты пытаешься сделать этой строчкой???
message.lpFiles = &attachment[50];
Скорее надо так:
message.lpFiles = &attachment[0];
или так:
message.lpFiles = attachment;


Ответ отправлен: 01.10.2003, 17:41
Отправитель: Gibbel


Отвечает Marouder

Приветствую Вас, Alexandr!
Ошибка здесь:
message.lpFiles = &attachment[50];
У тебя получается указатель на 50-ый элемент.
Надо так:
message.lpFiles = &attachment;

Ответ отправлен: 02.10.2003, 08:36
Отправитель: Marouder


 Вопрос № 1100

Здравствуйте
Нужно в TListView залить фон каждого Item(а) определенным цветом?
(Если можно кусочек кода, или ссылку на компонент для C++ Builder 5.0)
Спасибо!!!



Вопрос отправлен: 01.10.2003, 17:23
Отправитель: Quas

[Следующий вопрос >>] [Список вопросов]

Отвечает BOLT

Приветствую Вас, Quas!
IMHO, не получится.

Да прибудет с тобой Великая Сила!
This message was created by EMan 1.5


Ответ отправлен: 02.10.2003, 17:50
Отправитель: BOLT


Отвечает Eugene

Доброе время суток, Quas!
Эксперт BOLT не прав, получится :). Надо в свойствах ListView1 OwnerDraw = true. И написать обработчик события OnCustomDrawItem. Вот и всё.
Я у себя в примере ввёл в заголовки цифры от 1 до 5, для простоты. Ты можешь условие определять другим образом.

Приложение:

Ответ отправлен: 03.10.2003, 14:40
Отправитель: Eugene


 Вопрос № 1101

Здравствуйте, эксперты.
Мои вопросы:
1)Как можно в Borland C++ 5.02 записать в какие-либо переменные системное время (какие ф-ии для этого существуют)
2)Есть ли в Borland C++ 5.02 ф-ия, которая возвращает точное время работы программы?
Спасибо.



Вопрос отправлен: 01.10.2003, 20:02
Отправитель: Ass

[Следующий вопрос >>] [Список вопросов]

Отвечает BOLT

Доброе время суток, Ass!
1)Если тебя интересует WinApi, тогда смотри функцию в MSDN:

VOID GetSystemTime(
LPSYSTEMTIME lpSystemTime // system time
);

2)Используй функции:

UINT_PTR SetTimer(
HWND hWnd,
// handle to window
UINT_PTR nIDEvent, // timer identifier
UINT uElapse, // time-out value
TIMERPROC lpTimerFunc // timer procedure
);

и

BOOL KillTimer(
HWND hWnd,
// handle to window
UINT_PTR uIDEvent // timer identifier
);

Подробнее об этих функциях ты можешь найти в справочнике WinApi-программиста. В Borland C++ 5.02 есть справочник, но он уже староват и годится только для Win9x.

Да прибудет с тобой Великая Сила!
This message was created by EMan 1.5


Ответ отправлен: 02.10.2003, 17:50
Отправитель: BOLT


Отвечает Apricot

п”пѕп±яЂпѕпµ пІяЂпµпјяЏ яЃяѓя‚пѕпє, Ass!
п∙яЃя‚яЊ я„яѓпЅпєя†пёяЏ GetSystemTime
п п°п±пѕя‚п°я‚яЊ яЃ пЅпµп№ пјпѕп¶пЅпѕ яЃп»пµпґяѓяЋя‰пёпј пѕп±яЂп°п·пѕпј
LPSYSTEMTIME lptime=new SYSTEMTIME;
long milisecond;
char string[25];
GetSystemTime(lptime);
milisecond = lptime->wMilisecond;
...
...
GetSystemTime(lptime);
milisecond=lptime->wMilisecond-milisecond;
ltoa(milisecond,string, 10);
Edit1->Text=string;

Ответ отправлен: 02.10.2003, 09:21
Отправитель: Apricot


Отвечает vitya

Доброе время суток, Ass!
1. GetSystemTime()

Ответ отправлен: 02.10.2003, 09:05
Отправитель: vitya


Отвечает Marouder

Доброе время суток, Ass!
1)
I Вариант:
Из time.h функции asctime,gmtime,localtime,mktime,time и т.д. Функции простые - думаю разберешься.
II Вариант:
Функции из mmsystem.h - timeGetTime,timeGetSystemTime.
2) Попробуй в начало проги вставить вызов timeGetTime. Сохрани результат. Потом, когда нужно будет определить время, еще раз вызови ее, отними результат от значения, возвращенного при вызове в начале проги. Правда это не совсем точный результат, на несколько миллисекунд отличается.


Ответ отправлен: 02.10.2003, 08:36
Отправитель: Marouder


Отвечает Vdr

Добрый день, Ass!
1)
TDateTime TD;
TD=TD.CurrentDateTime();
TD.DateTimeString();
Удачи!

Ответ отправлен: 02.10.2003, 11:41
Отправитель: Vdr


 Вопрос № 1102

Здравствуйте эксперты !
Как сделать подсказку (tooltip) ко кнопке,
и ListCtrl. Пишу на VC++6



Вопрос отправлен: 01.10.2003, 21:22
Отправитель: IceWINteR (brothers@atnet.ru)

[Следующий вопрос >>] [Список вопросов]

Отвечает BOLT

Доброе время суток, IceWINteR!
Вот исходник из MSD>:

/* CREATE A TOOLTIP CONTROL OVER THE ENTIRE WINDOW AREA */
void CreateMyTooltip (HWND hwnd)
{
// struct specifying control classes to register
INITCOMMONCONTROLSEX iccex;
HWND hwndTT;
// handle to the ToolTip control
// struct specifying info about tool in ToolTip control
TOOLINFO ti;
unsigned int uid = 0; // for ti initialization
char strTT[30] = "This is your ToolTip string.";
LPTSTR lptstr = strTT;
RECT rect;
// for client area coordinates
/* INITIALIZE COMMON CONTROLS */
iccex.dwICC = ICC_WIN95_CLASSES;
iccex.dwSize =
sizeof(INITCOMMONCONTROLSEX);
InitCommonControlsEx(&iccex);

/* CREATE A TOOLTIP WINDOW */
hwndTT = CreateWindowEx(WS_EX_TOPMOST,
TOOLTIPS_CLASS,
NULL,
WS_POPUP | TTS_NOPREFIX | TTS_ALWAYSTIP,
CW_USEDEFAULT,
CW_USEDEFAULT,
CW_USEDEFAULT,
CW_USEDEFAULT,
hwnd,
NULL,
ghThisInstance,
NULL
);
SetWindowPos(hwndTT,
HWND_TOPMOST,
0,
0,
0,
0,
SWP_NOMOVE | SWP_NOSIZE | SWP_NOACTIVATE);
/* GET COORDINATES OF THE MAIN CLIENT AREA */
GetClientRect (hwnd, &rect);

/* INITIALIZE MEMBERS OF THE TOOLINFO STRUCTURE */
ti.cbSize = sizeof(TOOLINFO);
ti.uFlags = TTF_SUBCLASS;
ti.hwnd = hwnd;
ti.hinst = ghThisInstance;
ti.uId = uid;
ti.lpszText = lptstr;
// ToolTip control will cover the whole window
ti.rect.left = rect.left;
ti.rect.top = rect.top;
ti.rect.right = rect.right;
ti.rect.bottom = rect.bottom;

/* SEND AN ADDTOOL MESSAGE TO THE TOOLTIP CONTROL WINDOW */
SendMessage(hwndTT, TTM_ADDTOOL, 0, (LPARAM) (LPTOOLINFO) &ti);
}

Да прибудет с тобой Великая Сила!
This message was created by EMan 1.5


Ответ отправлен: 02.10.2003, 16:37
Отправитель: BOLT


 Вопрос № 1103

НЕ понятна работа с классами



Вопрос отправлен: 01.10.2003, 22:55
Отправитель: Alish (ezvalnews@mail.ru)

[Следующий вопрос >>] [Список вопросов]

Отвечает Avl2k

Здравствуйте, Alish!
Это очень плохо.
С уважением, Avl2k.

Ответ отправлен: 02.10.2003, 10:09
Отправитель: Avl2k


Отвечает Yuri Gordienko

Добрый день, Alish!
Учите матчасть
Успехов

Ответ отправлен: 02.10.2003, 10:05
Отправитель: Yuri Gordienko


Отвечает Marouder

Здравствуйте, Alish!
Книги читай.
Удачи.

Ответ отправлен: 02.10.2003, 08:35
Отправитель: Marouder


Отвечает BOLT

Приветствую Вас, Alish!
Что именно не понятно? Могу предположить, что тебе не понятно за чем вообще классы? Тогда я тебе объясню: ООП облегчает труд программисту. Это главная цель ООП.

Да прибудет с тобой Великая Сила!
This message was created by EMan 1.5


Ответ отправлен: 02.10.2003, 16:37
Отправитель: BOLT



Форма отправки вопроса

Внимание!
Мы рекомендуем открывать рассылку в программе Internet Explorer 5.0+ или отправлять вопросы с сайта по адресу: http://rusfaq.ru/cgi-bin/Message.cgi.

(C) 2002-2003 Команда RusFAQ.ru.

 Персональные данные

Ваше имя:

Ваш e-mail:

Опубликовать мой e-mail в рассылке


 Вопрос и дополнение

Ваш вопрос:


Приложение (если необходимо):


Получить ответов:


 Выбор рассылки

Программисту
Assembler (31)
C / C++ (27)
Perl (7)
Builder / Delphi (22)
Pascal (24)
Basic / VBA (8)
Java / JavaScript (10)
PHP (13)
Криптография (9)
WinAPI (15)
Пользователю
Windows 95/98/Me (55)
Windows NT/2000/XP (61)
"Железо" (43)
Поиск информации (26)
Администратору
Windows NT/2000/XP (32)
Linux / Unix (15)
Юристу
Гражданское право (11)
Семейное право (8)
Трудовое право (9)
КоАП (8)

Отправить вопрос всем экспертам выбранной рассылки.




Задать вопрос | Регистрация эксперта | Поиск в базе | Чат | Форумы | Новости
Проект экспертов RusFAQ.ru | Фотоальбом | Virus.RusFAQ.ru | Администрирование
Профессиональная WEB-Студия B.I.T.


Яндекс цитирования
© 2001-2003 Россия, Москва. Авторское право: Калашников О.А.

http://subscribe.ru/
E-mail: ask@subscribe.ru
Отписаться
Убрать рекламу

В избранное