Форум: "Начинающим";
Текущий архив: 2007.11.18;
Скачать: [xml.tar.bz2];
ВнизXML, TComboBox Найти похожие ветки
← →
timekiller © (2007-10-25 16:58) [0]Спасите проклятую бездарность!!!
есть парс, который сканит комбобоксы:
for i:=0 to FNode.selectNodes("//box").length-1 do
begin
CoBox:=TComboBox.Create(MainFRM);
CoBox.Parent:=MainFRM;
CoBox.Style:=csDropDownList;
CoBox.Name:=FNode.selectNodes("//box").item[i].attributes.getNamedItem("name").nodeValue;
CoBox.Top:=StrToInt(FNode.selectNodes("//box").item[i].attributes.getNamedItem("top").nodeValue);
CoBox.left:=StrToInt(FNode.selectNodes("//box").item[i].attributes.getNamedItem("left").nodeValue);
for j:=0 to FNode.selectNodes("//line").length-1 do
CoBox.Items.Add(FNode.selectNodes("//line").item[j].text);
CoBox.ItemIndex:=FNode.selectNodes("//box").item[i].attributes.getNamedItem("ind").nodeValue;
вот XML
<box name="Blin" top="56" left="352" ind="1">
<line>18</line>
<line>19</line>
<line>20</line>
<line>21</line>
<line>22</line>
<line>24</line>
<line>25</line>
<line>26</line>
<line>27</line>
<line>28</line>
<line>29</line>
<line>30</line>
</box>
<box name="Blin1" top="100" left="352" ind="1">
<line>11</line>
<line>22</line>
<line>33</line>
<line>44</line>
<line>55</line>
<line>66</line>
<line>77</line>
<line>88</line>
<line>99</line>
</box>
Проблема : если комбобоксов больше одного то ITEMS в боксах начинают налезать друг на друга!! тоесть в обоих комбах сершенно одинаково вылезает 18,11,19,22,20,33,21,44
Как исправить? чтобы в разных комбах были СВОИ значения? как обратиться к childnodes[line] (и спасет ли) ??
← →
Reindeer Moss Eater © (2007-10-25 17:01) [1]если line ищешь от всего документа, то ограничивай box по имени.
либо ищи от узла box
← →
timekiller © (2007-10-25 17:04) [2]>>>либо ищи от узла box
Как к childNodes узла BOX обратиться? я просто всю башку поламал ниче не сображаё
← →
Reindeer Moss Eater © (2007-10-25 17:07) [3]так и обратиться MyBoxNode.ChildNodes
← →
timekiller © (2007-10-25 17:14) [4]с циклом синтаксиса не знаю ..
for j:=0 to FNode.childNodes("//box").items length-1 do
for j:=0 to FNode.childNodes("//lines").items length-1 do
не хавает
← →
Reindeer Moss Eater © (2007-10-25 17:16) [5]"Не хавает", потому что просишь чайлды не у узла box
← →
Reindeer Moss Eater © (2007-10-25 17:17) [6]да и чайлды просить надо не так.
← →
timekiller © (2007-10-25 17:20) [7]Reindeer Moss Eater аха Спасип!
По теме : Проблема в силе, люди помогите СТРОЧКОЙ глупому програмёру!!
← →
Reindeer Moss Eater © (2007-10-25 17:21) [8]в верхнем цикле у тебя есть доступ к очередному узлу box
вот от него и пляши, а не от документа в целом
← →
timekiller © (2007-10-25 17:28) [9]for i:=0 to FNode.selectNodes("//box").length-1 do
for j:=0 to FNode.childNodes.length-1 do
Таг штоле?
← →
Reindeer Moss Eater © (2007-10-25 17:31) [10]а что, самому не видно что совсем не так "штоле"?
Сцылку на элемент списка нужно поиметь внутри первого цикла.
← →
timekiller © (2007-10-25 17:31) [11]FNode.selectNodes("//box").childNodes.length-1 тож не хавает
← →
timekiller © (2007-10-25 17:33) [12]я синтаксиса не знаю, с XML работал ровно 1 день , я бездарность тут
← →
Reindeer Moss Eater © (2007-10-25 17:36) [13]FNode.selectNodes("//box") возвращает список
тебе нужен элемент этого списка
← →
timekiller © (2007-10-25 17:52) [14]ок спасип! я понял что заставляешь думать, но уже паника и паранойа (бесполезно)
тогда пойду на другие форумы просить тожесамое, всеголишь пральный синтаксис
убейте меня :)
Страницы: 1 вся ветка
Форум: "Начинающим";
Текущий архив: 2007.11.18;
Скачать: [xml.tar.bz2];
Память: 0.48 MB
Время: 0.04 c