Люди подскажите пожалуйста, Почему когда в scrollboxe отключаешь визуализацию линеек прокрутки, отпадает и сама возможность прокрутки, мож есть какие-то другие методы, а вообще мне надо прокрутить широкоугольную панараму.
Приветствую Вас, yar! Да... а зачем тогда их выключать?! Тоже самое: а почему когда снимаешь замок с двери, ее потом нельзя закрыть на ключ.
Да прибудет с тобой Великая Сила! This message was created by EMan 1.5
Ответ отправлен: 02.10.2003, 17:50 Отправитель: BOLT
Вопрос № 1098
Добрый вечер ВСЕМ. Я новичок в С++. Дан одномерный массив. Нужно написать ФУНКЦИЮ поиска мин. элемента массива (через указатели). Заранее большое спасибо.
#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); Но при этом ничего не работает. Объясните мне пожалуйста, где и что я неправильно сделал.
Приветствую Вас, 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) Спасибо!!!
Да прибудет с тобой Великая Сила! 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 ф-ия, которая возвращает точное время работы программы? Спасибо.
Доброе время суток, 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! 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
Доброе время суток, 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
Здравствуйте, 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.