Перейти из форума на сайт.

НовостиФайловые архивы
ПоискАктивные темыТоп лист
ПравилаКто в on-line?
Вход Забыли пароль? Первый раз на этом сайте? Регистрация
Компьютерный форум Ru.Board » Компьютеры » Прикладное программирование » Вопросы по Delphi (все версии) - часть 3

Модерирует : ShIvADeSt

ShIvADeSt (07-04-2008 02:27): продолжение в http://forum.ru-board.com/topic.cgi?forum=33&topic=9383  Версия для печати • ПодписатьсяДобавить в закладки
Страницы: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101

   

Maks150988



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Здраствуйте. Как мне программно передвинуть строчку в ListView? Код такой:
 
  SelRow := SendMessage(GetDlgItem(hWin, CTRL_LISTVIEW_PLAYLIST), LVM_GETNEXTITEM, -1 , LVIS_SELECTED);
  if SelRow = -1 then Exit;
  if(SelRow > -1) then SendMessage(GetDlgItem(hWin, CTRL_LISTVIEW_PLAYLIST), LVM_SETITEMPOSITION, SelRow + 1, 0);
 
Но элемент не перемещается вниз. Что делаю не так?

Всего записей: 836 | Зарегистр. 23-12-2006 | Отправлено: 01:41 27-01-2008
vidic777



Advanced Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
Подскажите как решить такую проблему ?
Пытаюсь чужой проект, который мне необходимо продолжать дорабатывать,  перетащить из BCB 5.0 в RAD Studio 2007 и при открытии файла *.bpr получаю сообщение об ошибке:
 Error
---------------------------
Parameter "itemInclude" cannot be null.
---------------------------
OK   Details <<    
---------------------------
Скриншот:

 
Полный текст сообщения
 
Подробнее... [?]
 
 
Первый раз сталкиваюсь с такой ошибкой и незнаю как найти решение, в каку сторону копать.  
Очень прошу помочь в данной проблеме.  
 
Заранее благодарен.

Всего записей: 1313 | Зарегистр. 16-02-2005 | Отправлено: 03:55 27-01-2008 | Исправлено: vidic777, 03:58 27-01-2008
Maks150988



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
И еще хотел спросить: щелкаю в ЛистВью по пункту и жму на другое окошко. Выделение элемента в списке пропадает. Может стиль надо какой применить к элементу? А то например с Диспетчером задач такого не происходит - там выделенрие элемента в списке сохраняется, если курсором пощелкать по другим контролам.
И еще: мне необходимо сразу инициализировать 2 диалога через DialogBox, однако грузится только один. Как это можно сделать? Просто мне необходимо это для дополнительного окошка, которое использую вкачестве окна статуса.

Всего записей: 836 | Зарегистр. 23-12-2006 | Отправлено: 21:04 27-01-2008
xy



ХУдератор
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Народ, есть такая проблемка, думаю многим знакомая
Есть большое приложение, работает с БД разных типов и расположений
есть там фнукция типа подключения информации из одной БД в другую (хотя это и не так важно
заметил, что после завершения работы этой функции, прога что-то забывает в памяти, т.е. растет, потом уменьшается, но килобайт на 100 больше становится (запускал раз 20 и проверял по диспетчеру задач
 
прога в исходниках
 
подскажите плиз как малой кровью выследить чего она забывает в памяти (может коннект какой или переменные какие) :-?

----------
Счастливые мысли приводят к счастливой клеточной биохимии

Всего записей: 10530 | Зарегистр. 28-05-2003 | Отправлено: 21:36 27-01-2008
vassal76

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Здравствуйте подскажите пож. как стринговую переменную в которой сидит HEX код например #$17 изменить на #$21, т.е. ко всем значениям которые появятся в этой переменной прибавить 4 (сдвинуть на 4).

Всего записей: 23 | Зарегистр. 21-12-2007 | Отправлено: 05:41 28-01-2008 | Исправлено: vassal76, 05:47 28-01-2008
RomanTim

Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
xy
Попробуй AQTime - у него есть функция мониторинга создаваемых/освобождаемых объектов, памяти и т.п.
 
vassal76
StrToInt, IntToHex

Всего записей: 375 | Зарегистр. 11-09-2003 | Отправлено: 07:57 28-01-2008
vassal76

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Не канает пишет 'is not a valid integer value'
StrToInt я уже пробовал.

Всего записей: 23 | Зарегистр. 21-12-2007 | Отправлено: 09:22 28-01-2008
greenpc

Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
vassal76

Цитата:
стринговую переменную

тогда по всей длине

Код:
 
for i:=1 to length(s1) do
 if ord(s1[i])=$17 then s1[i] := chr($21) // или s1[i] := chr(ord(s1[i])+4);
 
а если значение одно то удобнее тип char;
 

Всего записей: 401 | Зарегистр. 18-04-2003 | Отправлено: 09:40 28-01-2008 | Исправлено: greenpc, 09:40 28-01-2008
vserd

Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
vassal76

Цитата:
Не канает пишет 'is not a valid integer value'  
StrToInt я уже пробовал

А волшебную кнопочку F1 нажимал?
А вдуууумчиво, не спеша, читал ?
Видно нет. Иначе бы вопросов не задавал.  
замени # на $ и будет тебе счастье, после замени на обратное.

Всего записей: 2065 | Зарегистр. 08-05-2002 | Отправлено: 10:40 28-01-2008
Mandor Sawall

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Maks150988
По моему, сообщение неправильное. LVM_SETITEMPOSITION работает только для icon view и small icon view, а параметры - X и Y координата.
 
Что бы не теряли selection, Style должен включать TVS_SHOWSELALWAYS.
 
Добавлено:
vassal76
Пожалуйста, поясните: какой у вас стринг:
sNumbers := #$17#$43...;
или
sNumbers := '#$17#$43...';

Всего записей: 119 | Зарегистр. 20-03-2003 | Отправлено: 11:00 28-01-2008
Maks150988



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Mandor Sawall
Да вот как оказалось правильно стиль TVS_SHOWSELALWAYS начинает работать, когда в самом ресурсе для контрола прописываю его, а не когда применяю через LVM_SETEXTENDEDLISTVIEWSTYLE. Очень странно... Такая мелочь, а сколько времени потратил на ее решение...
А LVM_SETITEMPOSITION не работает когда у меня просто LVM_LIST. Получается вообще никак? Эх...
И еще вопрос, который мучает. Помогите разобраться с инициализацией сразу двух диалогов. Дело обстоит примерно так: мне надо одновременно загрузить 2 диалога из ресурсов функцией DialogBox. Но по умолчанию грузится только один из них. Как можно в обход? Подумывал через таймер после иницализации первого грузить второй, однако это не выход. Итак таймеров многовато у меня в приложении. Вот не знаю как сделать.

Всего записей: 836 | Зарегистр. 23-12-2006 | Отправлено: 16:45 28-01-2008
mauar



Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Есть база данных (программа ) ADO с обращениями к базе Access, В базе Access есть таблица с логином и паролем для доступа и открытия программы через компонент TGuery, в таблице Access , как реализовать чтобы вводился пароль на изминения Access базы и на простой просмотр в DbGrid без возможности изминения данных?  

Всего записей: 134 | Зарегистр. 31-07-2006 | Отправлено: 17:59 28-01-2008
Erazer



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
подскажите плз как быть в таких случаях :
procedure GetFileVersion(FileName: String);
begin
InfoSize := GetFileVersionInfoSize(PChar(FileName), Tmp);
end;
если я хочу реализовать поддержку unicode, то должно быть похоже так:
procedure GetFileVersion(FileName: WideString);
а как тогда быть с PChar(FileName) ?
 
Добавлено:
есть пара функций {:Converts Unicode string to Ansi string using specified code page.  
@param   ws       Unicode string.  
@param   codePage Code page to be used in conversion.  
@returns Converted ansi string.  
} и {:Converts Ansi string to Unicode string using specified code page.  
@param   s        Ansi string.  
@param   codePage Code page to be used in conversion.  
@returns Converted wide string.  
}  вопрос: как понять какую именно кодовую страницу использовать ? (Code page to be used in conversion )
 
 

Всего записей: 1731 | Зарегистр. 02-08-2003 | Отправлено: 19:23 28-01-2008
jONES1979



Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
mauar, ты путанно как то объяснил... Но может тебе пригодится такое знание: в  компоненте Tdbgird есть свойство Readonly. Устанавливаешь его в true и грид переходит в режим просто просмотра. И у TQuery тоже есть такое свойство...

Всего записей: 324 | Зарегистр. 20-05-2005 | Отправлено: 22:27 28-01-2008 | Исправлено: jONES1979, 22:29 28-01-2008
RomanTim

Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
Erazer

Цитата:
если я хочу реализовать поддержку unicode

GetFileVersionInfoSizeW
 

Цитата:
как понять какую именно кодовую страницу использовать ?

Тут тебе виднее - ты должен знать на каком языке тебе пользователь пишет. Есть еще в системе возможность настраивать какой язык по умолчанию используется для неюникодовых программ (в региональных настройках). Получить можно так:
Код:
const
  LOCALE_RETURN_NUMBER = $20000000;
var
  n: Integer;
begin
  GetLocaleInfo(LOCALE_USER_DEFAULT,
    LOCALE_IDEFAULTANSICODEPAGE or LOCALE_RETURN_NUMBER, @n, SizeOf(n));
end;

Всего записей: 375 | Зарегистр. 11-09-2003 | Отправлено: 22:32 28-01-2008 | Исправлено: RomanTim, 22:33 28-01-2008
vassal76

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Mandor Sawall
 
стринг (без кавычек)
sNumbers := #$10
 
length говорит что длинна равна 1

Всего записей: 23 | Зарегистр. 21-12-2007 | Отправлено: 04:59 29-01-2008 | Исправлено: vassal76, 06:44 29-01-2008
relictus

Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Можно ли и как получить размер свободного места на сетевом диске? Сетевом ресурсе?

Всего записей: 3780 | Зарегистр. 19-04-2005 | Отправлено: 09:05 29-01-2008
Mandor Sawall

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
vassal76
Ну, если без кавычек, то greenpc уже ответил (лучше вариант после //).
Кстати, смещение #$17 на 4 дает #$1B а не #$21...
 
Maks150988
Прямо - никак. Нужно "ручками" заменить два Item-а.

Всего записей: 119 | Зарегистр. 20-03-2003 | Отправлено: 09:55 29-01-2008
greenpc

Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
relictus
var
    free_size, total_size: Int64;
 
begin
  GetDiskFreeSpaceEx(PChar('\\test\c$'), Free_size, Total_size, nil);
  ShowMessage(IntToStr(Free_size));

Всего записей: 401 | Зарегистр. 18-04-2003 | Отправлено: 10:43 29-01-2008
mauar



Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

Цитата:
mauar, ты путанно как то объяснил... Но может тебе пригодится такое знание: в  компоненте Tdbgird есть свойство Readonly. Устанавливаешь его в true и грид переходит в режим просто просмотра. И у TQuery тоже есть такое свойство...  

 
 Так вот мне и нужно сделать так чтобы это свойство было включенно при вводе пароля с запретом на редактирование .
 т.е. я ввожу пароль база открывается все работает, я хочу сделать чтобы можно было при вводе пароля для пользователя был запрет на редактирование данных. при вводе пароля администратора редактировать можно, при вводе пароля пользователя свойство  
ReadOnly было в true у компонента TQuery или у сеточки.

Всего записей: 134 | Зарегистр. 31-07-2006 | Отправлено: 11:37 29-01-2008
   

Страницы: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101

Компьютерный форум Ru.Board » Компьютеры » Прикладное программирование » Вопросы по Delphi (все версии) - часть 3
ShIvADeSt (07-04-2008 02:27): продолжение в http://forum.ru-board.com/topic.cgi?forum=33&topic=9383


Реклама на форуме Ru.Board.

Powered by Ikonboard "v2.1.7b" © 2000 Ikonboard.com
Modified by Ru.B0ard
© Ru.B0ard 2000-2025

BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

Рейтинг.ru