къде е грешката ?
6 отговора
182 прегледа
къде е грешката ?
LocForm.microLine(frmWorkspace.List1.ItemData(frmWorkspace.List1.ListIndex)).X1 = selector1.Left
LocForm.microLine(frmWorkspace.List1.ItemData(frmWorkspace.List1.ListIndex)).Y1 = selector1.Top
Къде съм сгрешил? Дава ми Invalid property array index.
Пътя си е верен, сигурен съм.
Don't hate the player, hate the game.
LocForm.microLine(frmWorkspace.List1.ItemData(frmWorkspace.List1.ListIndex)).Y1 = selector1.Top
Къде съм сгрешил? Дава ми Invalid property array index.
Пътя си е верен, сигурен съм.
Don't hate the player, hate the game.
Re: къде е грешката ?
Пътя може и да е верен, но дали свойството е разрешено за писане, и дали данните са подходящи. Първо изведи тези selector1.Left и .Top към някакъв Label, или трасирай през F8, за да им видиш стойностите, и дали могат да бъдат записани в LocForm.
Всъщност от тези два реда не ми стана ясно какви са обектите ти, и какво искаш да правят те. Хайде напиши по-подробно.
Всъщност от тези два реда не ми стана ясно какви са обектите ти, и какво искаш да правят те. Хайде напиши по-подробно.
Re: къде е грешката ?
LocForm.microLine(frmWorkspace.List1.ItemData(frmWorkspace.List1.ListIndex)).X1 = selector1.Left
Значи, LocForm е текущия диалогов прозорец, microLine е Line обект, frmWorkspace е друг диалогов прозорец, List1 е ListBox. Нататъка мисля, че е ясно кое какво е.
selector1.Left и Top са си ОК. Мисля, че проблема е някъде тук: (frmWorkspace.List1.ListIndex)
Мерси за помоща.
Don't hate the player, hate the game.
Значи, LocForm е текущия диалогов прозорец, microLine е Line обект, frmWorkspace е друг диалогов прозорец, List1 е ListBox. Нататъка мисля, че е ясно кое какво е.
selector1.Left и Top са си ОК. Мисля, че проблема е някъде тук: (frmWorkspace.List1.ListIndex)
Мерси за помоща.
Don't hate the player, hate the game.
Re: къде е грешката ?
Формата frmWorkspace заредена ли ти е преди да направиш обръщението към нея, и ако е - каква е стойността на frmWorkspace.List1.ListIndex ?
Да не би пък стойността на ItemData да е такава, че да нямаш Line с такъв индекс ?
Да не би пък стойността на ItemData да е такава, че да нямаш Line с такъв индекс ?
Re: къде е грешката ?
frmWorkspace е заредена, а стойноста на frmWorkspace.List1.ListIndex от начало е -1, демек е празна. След това се създава линията и List1.ListIndex е вече 1.
Имам Line с такъв индекс. Като напиша microLine(1).Left всичко си бачка.
Don't hate the player, hate the game.
Имам Line с такъв индекс. Като напиша microLine(1).Left всичко си бачка.
Don't hate the player, hate the game.
Re: къде е грешката ?
Ако изрично не се укаже, ListIndex винаги е -1. Добавянето на елементи в листа не променя стойността, ако изрично не се укаже: List1.ListIndex=едиквоси. А най-добре си е да трасираш и да видиш кое каква стойност има по време на греешката. Моето мнение е, че ЛистИндекс ти е -1, но защо да се гадае, като може да се провери?
Re: къде е грешката ?
Ако изрично не си избрал нищо в съответната контрола дето подържа листиндекс, то той е винаги -1, ако исбереш нещо, листиндекс става равен на този на избрания елемент!!!
Наведи главата защото прелитам ниско с асконата !!!
Наведи главата защото прелитам ниско с асконата !!!