Открыть главное меню

UIS MakeContentFromString: различия между версиями

м (Добавил в категорию)
м (Убрал изменения внесённые ботами)
 
(не показаны 4 промежуточные версии 4 участников)
Строка 1:Строка 1:
UINT32 '''UIS_MakeContentFromString'''( char *format, CONTENT_T *dst, ... );
+
<tt>UINT32 '''UIS_MakeContentFromString'''( char *format, CONTENT_T *dst, ... );</tt>
  
 
== Описание ==
 
== Описание ==
Строка 5:Строка 5:
  
 
== Параметры ==
 
== Параметры ==
*;char *format
+
<ol>
 +
<li>'''char *format
 
:Строка, содержащая [[#Типы содержимого|типы содержимого]] и [[#Типы выравнивания|типы выравнивания]]<br>
 
:Строка, содержащая [[#Типы содержимого|типы содержимого]] и [[#Типы выравнивания|типы выравнивания]]<br>
 
:Например: '''MCq0s1Ns2p3'''
 
:Например: '''MCq0s1Ns2p3'''
Строка 13:Строка 14:
 
::'''s2''' - ресурс строки №2 (обычно из [[Языковой пакет|ленга]])
 
::'''s2''' - ресурс строки №2 (обычно из [[Языковой пакет|ленга]])
 
::'''p3''' - ресурс картинки (обычно из [[DRM]])
 
::'''p3''' - ресурс картинки (обычно из [[DRM]])
{{Внимание|msg=Не забывайте эту строку брать в кавычки, то есть "MCq0s1Ns2p3"}}
+
{{Внимание|Не забывайте эту строку брать в кавычки, то есть "MCq0s1Ns2p3"}}
 
+
</li>
*;CONTENT_T *dst
+
<li>'''CONTENT_T *dst
 
:Указатель на [[Content|CONTENT_T]], возвращающий результат
 
:Указатель на [[Content|CONTENT_T]], возвращающий результат
<pre>
+
<ul><pre>
 
// Для начала, созданим собственно контент, то есть обьявляем его в начале функции
 
// Для начала, созданим собственно контент, то есть обьявляем его в начале функции
 
CONTENT_T        content;    //Название можно придумать любое
 
CONTENT_T        content;    //Название можно придумать любое
Строка 23:Строка 24:
 
&content
 
&content
 
// После выполнения UIS_MakeContentFromString в переменную content занесется собственно ваш контент.
 
// После выполнения UIS_MakeContentFromString в переменную content занесется собственно ваш контент.
</pre>
+
</pre></ul>
 
+
</li>
*;...
+
<li>'''...
 
:"А что это за три точки?",- скорее всего спросите вы.
 
:"А что это за три точки?",- скорее всего спросите вы.
 
:А это те данные, которые и будут помещены в content.
 
:А это те данные, которые и будут помещены в content.
 
:Пишутся данные по порядку, в соответствии со строкой '''MCq0s1Ns2p3''' (например)
 
:Пишутся данные по порядку, в соответствии со строкой '''MCq0s1Ns2p3''' (например)
<pre>
+
<ul><pre>
 
// Первое, что мы должны написать после &content - это собственно WCHAR строку:
 
// Первое, что мы должны написать после &content - это собственно WCHAR строку:
 
L"Hello world!"    //Вставляем что угодно
 
L"Hello world!"    //Вставляем что угодно
Строка 41:Строка 42:
 
// Следующим типом(p3) идет картинка, значит указываем на картинку из дрм:
 
// Следующим типом(p3) идет картинка, значит указываем на картинку из дрм:
 
0x120000D0    //0x1200 - обязательно вставлять для ресурса картинки. 00D0 - взята картинка кружки ява.
 
0x120000D0    //0x1200 - обязательно вставлять для ресурса картинки. 00D0 - взята картинка кружки ява.
</pre>
+
</pre></ul>
 +
</li>
 +
</ol>
 +
 
 +
<br>
 +
----
  
 
=== Типы содержимого ===
 
=== Типы содержимого ===
Строка 84:Строка 90:
 
* Если в WCHAR написать кирилицу - будут кракозябры
 
* Если в WCHAR написать кирилицу - будут кракозябры
 
{{Совет|Это замечание уже не действительно при хотябы одном из следующих условий:
 
{{Совет|Это замечание уже не действительно при хотябы одном из следующих условий:
# У Вас стоит "исправленный" [[Языковой пакет|LangPack]]
+
* У Вас стоит "исправленный" [[Языковой пакет|LangPack]]
# Вы используете [[Elfpack|ElfPack2]]}}
+
* Вы используете [[Elfpack|ElfPack2]]}}
{{Внимание|msg=Если берете картинку из [[DRM]], не забывайте её номер перевести в hex}}
+
{{Внимание|Если берете картинку из [[DRM]], не забывайте её номер перевести в hex}}
  
 
;Большое спасибо lavmen за столь подробное описание!
 
;Большое спасибо lavmen за столь подробное описание!
  
 
[[Категория:Функции UIS]]
 
[[Категория:Функции UIS]]

Текущая версия на 19:21, 12 июня 2010

UINT32 UIS_MakeContentFromString( char *format, CONTENT_T *dst, ... );

Содержание

Описание

Эта функция создает контент - содержимое, который необходим практически для всех UIS функций.

Параметры

  1. char *format
    Строка, содержащая типы содержимого и типы выравнивания
    Например: MCq0s1Ns2p3
    MCq0 - вывести строку по центру и середине
    s1 - ресурс строки (обычно из ленга)
    N - перейти на новую строчку
    s2 - ресурс строки №2 (обычно из ленга)
    p3 - ресурс картинки (обычно из DRM)
    Внимание!
    Не забывайте эту строку брать в кавычки, то есть "MCq0s1Ns2p3"
  2. CONTENT_T *dst
    Указатель на CONTENT_T, возвращающий результат
      // Для начала, созданим собственно контент, то есть обьявляем его в начале функции
      CONTENT_T content; //Название можно придумать любое
      // В функцию пишем:
      &content
      // После выполнения UIS_MakeContentFromString в переменную content занесется собственно ваш контент.
    • ...
      "А что это за три точки?",- скорее всего спросите вы.
      А это те данные, которые и будут помещены в content.
      Пишутся данные по порядку, в соответствии со строкой MCq0s1Ns2p3 (например)
        // Первое, что мы должны написать после &content - это собственно WCHAR строку:
        L"Hello world!" //Вставляем что угодно
        // Дальше видим s1, значит надо сказать функции какую строку надо взять из ленга:
        0x01000018 //0x0100 - обязательно вставлять для строковых ресурсов. 0018 - взята строка "уменьшить".
        // Далее идет s2, то же самое как мы делаем с s1:
        0x01000572 //0x0100 - обязательно вставлять для строковых ресурсов. 0572 - взята строка "увеличить".
        // Следующим типом(p3) идет картинка, значит указываем на картинку из дрм:
        0x120000D0 //0x1200 - обязательно вставлять для ресурса картинки. 00D0 - взята картинка кружки ява.



      Типы содержимого

      • a - анимация
      • d - дата
      • q - указатель на WCHAR строку
      • s - ресурс строки
      • i - int
      • j - LIST_IMAGE_ELEMENT_T
      • l - long
      • g - hex int
      • p - ресурс картинки
      • r - CONTENT_T
      • f - указатель на файл
      • t - время

      Типы выравнивания

      • N - новая строка
      • S - распределение текста
      • C - текст по центру
      • L - обрезать с "...", если строка слишком длинная
      • M - текст посередине (вертикальное выравнивание)
      • T - текст сверху
      • B - текст снизу


      Пример

      Теперь собстна надо написать пример использования самой функции

      CONTENT_T content; //В начале функции
      UIS_MakeContentFromString("MCq0s1Ns2p3", &content, L"Hello world!", 0x01000018, 0x01000572, 0x120000D0); //Создаем контент

      Вот и все. Контент который создала функция UIS_MakeContentFromString Вы можете использовать для разных диалогов, например UIS_CreateTransientNotice, UIS_CreateViewer и т.д.


      Примечания

      • Если в WCHAR написать кирилицу - будут кракозябры
      Совет!

      Это замечание уже не действительно при хотябы одном из следующих условий:

      • У Вас стоит "исправленный" LangPack
      • Вы используете ElfPack2
      Внимание!
      Если берете картинку из DRM, не забывайте её номер перевести в hex
      Большое спасибо lavmen за столь подробное описание!