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

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

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

 Версия для печати • ПодписатьсяДобавить в закладки
Страницы: 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 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323

Открыть новую тему     Написать ответ в эту тему

V1s1ter



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
         
Обсуждаем новые возможности и баги
 
Просьба писать про Embarcadero RAD Studio XE5, XE6, XE7, XE8, 10.x (Seattle, Berlin,Tokyo)
  По вопросам скачивания - Тема в Варезнике (lite-версии тут)
  Вопросы по неюникодным версиям Delphi — шестая бумага
  Бесплатные Компоненты и утилиты для Delphi/BCB/FreePascal/Lazarus
  Коммерческие компоненты и утилиты для Delphi/BCB
  Вопросы по компонентам для Delphi, C++ Builder разных версий
  Новые языковые возможности, начиная с Delphi 2005 по XE4 — здесь, и New!здесь еще
  Англоязычный официальный форум Embarcadero — здесь
  Embarcadero Quality Central, веб интерфейс — здесь, новый Quality Portal тут
  Программирование на Delphi — викиверситет
  Другие ресурсы
   Предыдущие бумаги
 
     Вопросы ..XE4       Вопросы ..XE3    Вопросы ..XE2      
  Вопросы ..2009-XE    Вопросы ..<2009 / ч.5    Вопросы ..<2009 / ч.4      
  Вопросы ..<2009 / ч.3    Вопросы ..Delphi 2 / ч.2    Вопросы ..Delphi  

  Выключение встроенного эксперта Castalia  для XE8 (иногда помогает при вылетах и тормозах)  
  Полезные плагины(эксперты)

Всего записей: 948 | Зарегистр. 06-02-2007 | Отправлено: 15:25 11-09-2013 | Исправлено: Komandor, 15:49 31-03-2024
Alexey_Gawrilow



Advanced Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
StalkerSoftware
Frodo_Torbins
При желании можно отключить темы у  
конкретного контролла

Всего записей: 640 | Зарегистр. 08-09-2003 | Отправлено: 18:44 04-04-2018
Ivax



Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Установил на Windows 7 загруженную с сайта Embarcadero Delphi 10.2.3 Tokyo Starter Edition, зарегистрировал. При переключении режимов (темы) "Light" -> "Dark" и обратно, а так-же при смене "Layout" сдвигаются куда попало верхние toolbar-ы, появляются пустые toolbar-ы шириной на пол экрана, уползает строка меню. Несколько toolbar-ов вообще за пределы экрана выкинуло, достать не могу. Бардак полный получился.
 
В предыдущих версия был пункт что-то типа "сбросить Layout в исходное состояние". Тут ничего подобного найти не могу. Как сбросить настройки предустановленых Layout-ов в исходное (дефолтное) состояние? И можно ли закрепить toolbar-ы на панели намертво?

Всего записей: 271 | Зарегистр. 07-10-2003 | Отправлено: 22:04 04-04-2018
StalkerSoftware



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

Цитата:
При желании можно отключить темы у  

Проверил, в принципе работает.
 
Но в моем случае оно не годится - ToolButton со стилем tbsDropDown, когда жмешь на часть кнопки для показа меню, остается в нажатом состоянии пока не нажмешь на основную часть кнопки. Да и для отдельного ToolButton  не применишь SetWindowTheme.
 
Frodo_Torbins
В принципе это уже не важно, есть в Delphi7 темы или нет. Факт в том, что в Delphi 7 в VCL-приложении с параметрами проекта по умолчанию обработчик
Код:
procedure TForm1.ToolBar1CustomDrawButton(Sender: TToolBar; Button: TToolButton; State: TCustomDrawState; var DefaultDraw: Boolean);
begin
 
 if Button = ToolButton2 then
   Sender.Canvas.Font.Color := clRed;
 
end;
 
работал нормально, а в точно таких же условиях в Delphi 10.2 не работает.
В документации так же ничего не сказано его возможной неработоспособности с темами.
 
Так что ИМНО это все же ошибка Delphi 10.2, попробую про это написать в quality.embarcadero.com вдруг ответят.

Всего записей: 682 | Зарегистр. 23-06-2008 | Отправлено: 11:52 06-04-2018 | Исправлено: StalkerSoftware, 11:54 06-04-2018
Alexey_Gawrilow



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

Цитата:
Так что ИМНО это все же ошибка Delphi 10.2

Неа.
Это именно из-за темы.
Все CustomDraw нифига с темой не работуют.
Она(Windows) просто сообщения не шлет.

Всего записей: 640 | Зарегистр. 08-09-2003 | Отправлено: 13:21 06-04-2018
StalkerSoftware



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

Цитата:
Неа.
Это именно из-за темы.
Все CustomDraw нифига с темой не работуют.
Она(Windows) просто сообщения не шлет.
А почему же тогда в описании обработчика OnCustomDrawButton про это ни слова (что он типа не совместим с опцией темы) ?

Всего записей: 682 | Зарегистр. 23-06-2008 | Отправлено: 19:51 06-04-2018
ChSerg



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
StalkerSoftware
Про все не напишешь. Поковыряйтесь в темах, может там что написано.

Всего записей: 936 | Зарегистр. 30-08-2001 | Отправлено: 08:32 07-04-2018
Zatupitel



Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
StalkerSoftware
Да тут тоже по-умолчанию вроде как все работает, только одну галочку снять. Да и если сравнивать D7 и 10.2.3, сколько лет разница-то? Чего эти пережитки тянуть. И из-за одной галочки, думаю, паниковать смысла нет.  
 
   

Всего записей: 469 | Зарегистр. 31-08-2006 | Отправлено: 12:32 07-04-2018 | Исправлено: Zatupitel, 12:37 07-04-2018
ChSerg



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Zatupitel
А немного повыше посмотреть это никак? Я же уже написал, зачем повторять?
 
Отключите поддержку тем в проекте, и все заработает.

Всего записей: 936 | Зарегистр. 30-08-2001 | Отправлено: 14:27 07-04-2018 | Исправлено: ChSerg, 14:27 07-04-2018
StalkerSoftware



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

Цитата:
Да тут тоже по-умолчанию вроде как все работает, только одну галочку снять. Да и если сравнивать D7 и 10.2.3, сколько лет разница-то? Чего эти пережитки тянуть. И из-за одной галочки, думаю, паниковать смысла нет.  
Галочку снять не трудно, но тогда внешний вид программы на D10.2.3 будет такой же как и у D7. А этого не хочется.  
 
P.S.
В  QC (https://quality.embarcadero.com/browse/RSP-20313) я про это написал, надеюсь разрабы это исправят (даже если винда не шлет нужные сообщения, может они какой то обходной путь для этого придумают).

Всего записей: 682 | Зарегистр. 23-06-2008 | Отправлено: 10:47 10-04-2018 | Исправлено: StalkerSoftware, 10:49 10-04-2018
Alexey_Gawrilow



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

Цитата:
может они какой то обходной путь для этого придумают

Все может быть...
Варианта у тебя 2:
 
1) CustomControl, берешь любую(как грязи) библиотеку и используешь оттуда альтернативную реализацию
SpTBXLib
part.dcComp
part.LMD
part.RA Now Jedi Part
part.TMS
part.Berg
part.BlockCAD
part.dcodebot
part.pegTop
 
2) Попробуй Windows Ribbon Framework
Только это не те CustomControl, которые мимикрируют под ленту.
Это тот самый, декларативный, который реализуется API от MS.
http://www.bilsen.com/windowsribbon/
https://github.com/TurboPack/RibbonFramework
 
Но у риббона, как подхода к UI слишком узкая ниша применения.
Понимаю, утверждение холиварное...
..но большинству программ - как корове седло.
 
Добавлено:
StalkerSoftware

Цитата:
Галочку снять не трудно, но тогда внешний вид программы на D10.2.3 будет такой же как и у D7. А этого не хочется.  

'Сними' только у ToolBar.
Как, было выше.

Всего записей: 640 | Зарегистр. 08-09-2003 | Отправлено: 14:02 10-04-2018
stanzdor



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

Всего записей: 594 | Зарегистр. 12-04-2004 | Отправлено: 02:51 12-04-2018 | Исправлено: stanzdor, 15:55 12-04-2018
StalkerSoftware



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Hi All,
 
Есть два одинаковых по структуре TDataSet (одинаковое количество, тип, название полей).
Но вот кол-во строк и данные в них могут иногда отлиться.
 
Вопрос: Есть ли готовый компонент, для визуального сравнения таких данных ?

Всего записей: 682 | Зарегистр. 23-06-2008 | Отправлено: 14:16 13-04-2018
Alexey_Gawrilow



Advanced Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
StalkerSoftware
TXQuery в руки.
Позволяет построить SQL запрос для доступных TDataSet.
У меня молодой падаван JOIN на нем делал.
 

Всего записей: 640 | Зарегистр. 08-09-2003 | Отправлено: 17:45 13-04-2018
StalkerSoftware



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Alexey_Gawrilow
Мне не нужен запрос, у меня уже есть все данные в формате TDataSet.
Мне нужен компонент для красивого ВИЗУАЛЬНОГО сравнения данных из двух TDataSet с одинаковой структурой, т.е. что бы пользователь на экране видел данные из обоих TDataSet и что бы ему показывались различия между этими данными.

Всего записей: 682 | Зарегистр. 23-06-2008 | Отправлено: 18:15 13-04-2018
Alexey_Gawrilow



Advanced Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
StalkerSoftware
Я понимаю, что нужно все и сразу.
И чтобы было сделано другими.
И бесплатно.
Но иногда, нужно программировать самому.
Ну или хотя бы сложить вместе несколько частей.

Всего записей: 640 | Зарегистр. 08-09-2003 | Отправлено: 00:09 14-04-2018
StalkerSoftware



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

Цитата:
Но иногда, нужно программировать самому.
Ну или хотя бы сложить вместе несколько частей.

Сам я что то подобное давно сделал. Просто подумал, может есть что то готовое и заточенное под такие сравнения.
 
 
Есть другой вопрос.
 
Delphi 10.2.3
Понадобилось мне тут работать с XML. Создание XML, запись его в базу или файл, чтение XML назад, изменение некоторых нод xml.
 
Для этого решил попробовать штатный TXMLDocument.
Все параметры его оставил по умолчанию, поменял только свойство DOMVendor с MSXML на Omni XML.
 
В ходе работы обнаружился странный момент:
 
Код создающий простой xml:

Код:
 
 iRootNode :IXMLNode;
 
 XMLDocument.XML.Clear;
 XMLDocument.Active := True;
 iRootNode := XMLDocument.AddChild('items');
 iRootNode.AddChild('item1').Text := '';
 iRootNode.AddChild('item2').Text := 'test';
 XMLDocument.SaveToFile('test1.xml');
 
 XMLDocument.Active := False;
 XMLDocument.XML.Clear;
 XMLDocument.LoadFromFile('test1.xml');
 XMLDocument.Active := True;
 XMLDocument.SaveToFile('test2.xml');
 

 
В результате работы этого кода получаю два файла:
 
test1.xml
<items><item1></item1><item2>test</item2></items>
 
test2.xml
<items><item1/><item2>test</item2></items>
 
Обратите внимание: Когда я создавал XML и в item1 присвоил пустое значение, то в файле это отразилось в виде полного тега  <item1></item1>, а когда я этот же файл опять загрузил в XMLDocument
и включил свойство Active (в этот момент как я понимаю происходит парсинг XML), то тег item1 стал почему то не полным <item1/>.
Я в курсе, что оба варианта являются правильным, НО почему когда создаешь XML, то пустое значение заключается в полный тэг, а когда просто прочитал этот XML, то у пустого значения уже не полный тег ?
Можно ли это как то исправить, что бы во всех случаях оно было одинаково (мне это очень важно) ?
Или может быть это ошибка вендора "Omni XML" ?
 
Ну и общий вопрос: Может вообще не стоило связываться с TXMLDocument, а надо было взять какую то стороннюю библиотеку работы с XML ?

Всего записей: 682 | Зарегистр. 23-06-2008 | Отправлено: 11:15 20-04-2018
Alexey_Gawrilow



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

Цитата:
НО почему когда создаешь XML, то пустое значение заключается в полный тэг, а когда просто прочитал этот XML, то у пустого значения уже не полный тег

XMLDoc.TXMLDocument.ParseOptions
poPreserveWhiteSpace  
 White space in the text of the XML document is not stripped off.  
 

Цитата:
Ну и общий вопрос: Может вообще не стоило связываться с TXMLDocument, а надо было взять какую то стороннюю библиотеку работы с XML ?  


Цитата:
Для этого решил попробовать штатный TXMLDocument.  
Все параметры его оставил по умолчанию, поменял только свойство DOMVendor с MSXML на Omni XML.  

Так ты именно это и сделал.
Взял стороннюю библиотеку и использовал ее в обобщенной обвязке.
 
http://forum.ru-board.com/topic.cgi?forum=33&topic=8529&start=6700#14
 
TXMLDocument - годный.
 
OmniXML - хорош.
https://github.com/mremec/omnixml
 
Круче только OXML, но он платный стал.
http://sourceforge.net/projects/oxml/
http://www.kluug.net/oxml.php
 
Не помню проблем с XML, лет 15 уже.
 
А нет... тут пару лет назад нужно было сделать и подписать XML(Canonical XML + XML Signature).
Clever(Clever Internet Suite) помог.
 
Вопрос может быть только в поддерживаемых feature, полноте поддержки стандарта/спецификаций XML.
Простых - очень много, как грязи.
Поддерживают регистрацию в качестве DomVendor - единицы.
 
Добавлено:
StalkerSoftware

Цитата:
НО почему когда создаешь XML, то пустое значение заключается в полный тэг, а когда просто прочитал этот XML, то у пустого значения уже не полный тег ?

вот почему

Всего записей: 640 | Зарегистр. 08-09-2003 | Отправлено: 12:48 20-04-2018 | Исправлено: Alexey_Gawrilow, 13:24 20-04-2018
Alexzzy

Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
OmniXML не совсем сторонняя библиотека. Она ж в юните Xml.Internal.OmniXML лежит.

Всего записей: 1474 | Зарегистр. 10-07-2013 | Отправлено: 14:49 20-04-2018
AlexCoRu

BANNED
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Подскажите по соответсвтвию типов данных 1С и Delphi.
С 1С соединяюсь через СОМ, получаю результаты запроса. Теперь их надо в DataSet...
Вот и вопрос как узнать тип колонки результата и сопоставить типу данных DataSet?

Код:
N := Результат.Колонки.Количество;
for I := 0 to N - 1 do
begin
  Колонка := Результат.Колонки.Получить(I);
  S := Колонка.Имя;
  Колонка.ТипЗначения;// ???
end;

Всего записей: 911 | Зарегистр. 04-09-2003 | Отправлено: 16:09 20-04-2018
Alexey_Gawrilow



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

Цитата:
OmniXML не совсем сторонняя библиотека. Она ж в юните Xml.Internal.OmniXML лежит.

FastReport
Indy
Тоже в таком случае встроенная?
Если я обзову юнит Xml.Internal.NativeXML.pas он тоже станет встроенным?

Всего записей: 640 | Зарегистр. 08-09-2003 | Отправлено: 16:57 20-04-2018
Открыть новую тему     Написать ответ в эту тему

Страницы: 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 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323

Компьютерный форум Ru.Board » Компьютеры » Прикладное программирование » Embarcadero RAD Studio


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

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

BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

Рейтинг.ru