Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Начинающим";
Текущий архив: 2009.03.29;
Скачать: [xml.tar.bz2];

Вниз

Как присоединить данные к DIB?   Найти похожие ветки 

 
Vemer ©   (2009-02-01 00:38) [0]

Здравствуйте, снова я с глупым вопросом...
Есть массив
var
MyData:Array of [0..64, 0..64, 0..3] of Byte;

Пытаюсь прикрепить его к DIB при его создании:
MyBmp.Handle := CreateDIBSection(Other.Handle, BInfo, DIB_RGB_COLORS, @MyData, 0, 0);

и получаю в ответ какие то непонятные ругательства насчет Pointer.

Подскажите пожалуйста, что нужно сделать чтобы привязать массив к DIB?

P.S. Гуглил. P.P.S. Часики в кладовку выложил.


 
sniknik ©   (2009-02-01 00:42) [1]

> и получаю в ответ какие то непонятные ругательства насчет Pointer.
надо расшифровать... криптолога вызвать, ведь раз они непонятные то значит наверняка на древнеарамейском...


 
Vemer ©   (2009-02-01 00:54) [2]

Types of actual and formal var parameters must be identical

Прочитал Help по этой ошибке, но не помогло.


 
sniknik ©   (2009-02-01 00:59) [3]

> Прочитал Help по этой ошибке, но не помогло.
читать недостаточно надо еще и делать что то по прочитаному, к примеру код в соответствии с рекомендациями там привести. тут - сделать типы одинаковыми.


 
Vemer ©   (2009-02-01 01:19) [4]

Короче, как я понял надо каким- то способом получить "чистый" Pointer на массив. Как это сделать?

Var
MyPointer: Pointer:

begin
MyPointer := ^MyData;

Ругается на несовместимость ((.


 
sniknik ©   (2009-02-01 01:28) [5]

> Ругается на несовместимость ((.
MyPointer := @MyData;


 
Vemer ©   (2009-02-01 02:13) [6]

А сразу MyPointer := @MyData; конечно сложно было написать.

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

Есть работающий линейный вариант с
Type
TBig = Array [0..0] оf Byte;
begin
TBig(MyPointer)[I] = MyBlue;
TBig(MyPointer)[I+1] = MyGreen;
TBig(MyPointer)[I+2] = MyRed;


Но хочется  с раздельным доступом к RGB ));


 
Германн ©   (2009-02-01 02:27) [7]


> Vemer ©   (01.02.09 02:13) [6]
>
> А сразу

А сразу - это только в техподдержке. А она платная!


 
sniknik ©   (2009-02-01 11:04) [8]

> А сразу MyPointer := @MyData; конечно сложно было написать.
невозможно.
сразу я не знал что ты делаешь, что за функция (тебя удивит если я скажу что занимаюсь несколько другим чем ты), что за параметры она принимает и т.д.
т.е. фактически сразу я не знал что причина в "MyPointer := @MyData;", но знал что о ней сказано в ошибке и если эту ошибку не игнорировать... в общем всего лишь проведена работа над ошибкой с твоих слов, а не выдан готовый рецепт которого сразу не было.

> кто знает как прицепить массив к рисунку так, чтобы можно было редактировать?
help знает...
но не беспокойся, любители "готовый рецептов"  меня не интересуют, не буду больше беспокоить, хотя разобраться в том как сделать уверен не проблема.
но разбираться самому с помощью/советами других тебя как видно не устраивает. т.что ....


 
Vemer ©   (2009-02-01 12:07) [9]

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


 
sniknik ©   (2009-02-01 13:40) [10]

> хехе.. не хотел обидеть..
обидеть? чем? ты просто ставишь себя в категорию  людей которым не хочется помогать, хочется воспитывать...

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

вот давай проверим, я типа спрашиваю как ты, про мелочь, а ты даешь готовый рецепт..
опуская предварительные "ласки" насчет глупого вопроса, сразу
есть процедура
MySyperGetMem(byf);
при выполнении дает "какие то непонятные ругательства насчет Memory".
в чем дело?

и давай сразу, без дополнительных вопросов.


 
Vemer ©   (2009-02-01 14:55) [11]

А вы ставите себя в категорию "отцов" форума с неистребимой склонностью  к чтению нотации и даче оценок другим людям и доказательства своей правоты..

Если я вас не обидел какого  <ВЦ> задавать такие вопросы?
Ну вы доказли что круче небес и выше яйц, довольны?
Всего хорошего.


 
sniknik ©   (2009-02-01 16:19) [12]

> Всего хорошего.
договорились



Страницы: 1 вся ветка

Форум: "Начинающим";
Текущий архив: 2009.03.29;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.47 MB
Время: 0.07 c
3-1216467013
Евгений Р.
2008-07-19 15:30
2009.03.29
Обновление в DbGrid


2-1233404283
Новичек
2009-01-31 15:18
2009.03.29
Очистка окна средствами WinAPI


4-1207047506
kolj
2008-04-01 14:58
2009.03.29
Tapi -> CallBackFunction


2-1233735843
npr2
2009-02-04 11:24
2009.03.29
Проверка в Grid


1-1207857224
тКнопка
2008-04-10 23:53
2009.03.29
Как узнать, сколько копий приложения запущенно?





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский