ПредишенСледващото

Добър ден колеги,
да ми каже как да се справя на String (дръжката на прозореца на дете) в SubVI чрез WinAPI (прозорец ще бъде единственият в SubVI. Ето защо, според dadreamer трябва да работи).
Първата стъпка е ясна - обадете FindWindow и да получите SubVI дръжка. И след това, за да все още не разбирам.

И защо смяташ да се справя с низ? Той всъщност е тип неподписани Pointer Sized Цяло число, т.е. U64 64-битова среда и U32 в 32-битова.

И в крайна сметка, който искате да направите това с дръжката? Може би е много по-лесно с Windows не трябва да свиря на цигулка API.

Проблемът е, че възелът на имота забрани SubVI работят Вградени => работни SubVI драстично забавя.
Е, аз не знам как да се направи VI да работят бързо и да използва имота възел. Затова реших да работя с WinAPI (ще работи също толкова бързо).

Чрез дръжката, което искам да направя оцветяване в ТЕКСТ части String. Примерът показва мой проблем.

Igor_G написал (а): Проблемът е, че възелът на имота забрани SubVI работят Вградени => работни SubVI драстично забавя.


Тук по-скоро на факта, че по-голямата част (90 на сто) на имота / позове възли работи на нишката на потребителския интерфейс, а той сам на цялото приложение. Но да, имотът не може да се използва в инлайн Subway.

Igor_G написал (а): и затова решихме да работим с WinAPI (ще работи също толкова бързо).


Посочете класа на прозореца и след това, за да се сведе до минимум риска от фалшиви резултати. Заглавие може да се направи, ако не и уникален, а след това най-малко оригинала на вашата кандидатура.

Igor_G написал (а): След като дръжката, което исках да направя оцветяване в ТЕКСТ части String. Примерът показва мой проблем.


Честно казано, аз не разбирам какво е hwnd прозорец на контрола на низ (показател). Как смяташ да рисува контрол (LED) с помощта на справиш с това?

От гледна точка на WinAPI всички (или почти всички правят дръжката). Имам нужда да се справя с показателя за низ.
NI казва, че е възможно да се знае също, чрез WinAPI но не казва как. о (

Чрез дръжката на индикатора за струнен мога да направя, за оцветяване в дисплей String текст с помощта WinAPI и тя ще работи инлайн.

Igor_G написал (а): От гледна точка на WinAPI всички (или почти всички правят дръжката).


Независимо. HWND - това е просто прозорци.

Igor_G написал (а): Трябва да се справя с показателя за низ.


Вие не го получи. За него това не е така.

Igor_G написал (а): NI казва, че е възможно да се знае също, чрез WinAPI но не казва как. о (


Брад, обектите на РП все още няма дръжки, в противен случай би било невъзможно да се осигури по-платформа. WinSpy също е в състояние да покаже нещо. Доказателство, ако смятате, точно обратното.

Igor_G написал (а): A дръжка с показателя за струнен мога да направя, оцветявайки дисплей String текст с помощта WinAPI и тя ще работи инлайн.


И все пак - успех в прилагането на решения.

ZY но все пак, да си свършат работата с GUI в vremyakritichnyh съчетания - не е добре.

Независимо. HWND - това е просто прозорци.


Извинете ме, но нека не се съглася с вас. Прочетете внимателно сканирана страница. 14.

Вие не го получи. За него това не е така.

Брад, обектите на РП все още няма дръжки, в противен случай би било невъзможно да се осигури по-платформа. WinSpy също е в състояние да покаже нещо. Доказателство, ако смятате, точно обратното.


Крос-платформа, осигурена защо Чарлз Simonai беше далеч от глупав човек - (виж сканираната страница 4 ..).

През тази учебна разправия Бих искал да завърша и да се върне към първоначалната въпрос.

Хендел как да се определят елементите на РП?
Фактът, че е възможно - това е факт. Той ми отговори NI поддръжка и даде линк към тази страница. Това е същото Четох някъде в лава (за съжаление открих днес вече не могат връзка).
Аз нямам никой идея? Не е наистина най-е в действителност никой не се е опитал?

Приложения. ул-4-5.pdf страница 4 (1.15 MB) изтегляне :. ул-14-15.pdf 22 страница 14 (1.21 MB) изтегляне: 20

Инженер - светлинен отворен интелигентност, безплатно и не обидни хумор, лекота и широта на мисълта. Това е добри обноски, финес от вкусове, добра реч, гладко, координирани и без вредни думи.
-Солженицин

Igor_G написал (а): Извинете ме, но нека не се съглася с вас. Прочетете внимателно сканирана страница. 14.


Чудя се какво е това, че не са съгласни? Написах всичко правилно. Отново:

dadreamer написал (а): Зависи от това какво. HWND - това е просто прозорци.


Фактът, че Windows дръжки се използват често, това не е тайна за това как някои напреднал потребител. А че никой не се е отрекъл веднъж. Но вида на дръжката е HWND управлява само прозорци. Извадка от тук:

Прозорците са обекти - те имат код, така и данни - но те не са C ++ класове. Вместо това, програма референцията прозорец чрез използване на стойност, наречена дръжка. Дръжката е непрозрачна тип. По същество, това е просто число, което операционната система използва за идентифициране на даден обект. Можете да си представите Windows като има голяма маса на всички прозорци, които са създадени. Той използва тази таблица, за да търсите прозорци от техните дръжки. (Дали това е точно как работи вътрешно не е важно.) Типът на данните за прозорец дръжки е HWND. които обикновено се произнася "кръстната вятъра." Window дръжки са върнати от функциите, които създават прозорци: CreateWindow и CreateWindowEx.

Така че, по-HWND е манипулатор, но не всички дръжки са HWND. В действителност:

typedef нищожен * PVOID;
typedef PVOID ДРЪЖКА;
typedef ТРЕТИРА HWND;


И не може да има хиляди цитати набиране, ако желаете, тъй като това е истина.
Между другото, на тези страници, книгата е нито дума за това дръжката на вид магия бисквитката. Между другото, тези дръжки не трябва да бъде свързано с всеки обект в паметта (не може да бъде).

Igor_G написал (а): Крос-платформа, осигурена защо Чарлз Simonai беше далеч от глупав човек - (виж сканираната страница 4 ..).


Какво означава това Чарлз Simonai за различни платформи.
Цитат от собствените си книги:

Във всеки книга, посветена на програмиране на Windows, ще откриете споменаване на факта, че една от първите разпадането манипулатор Windows Simonai Чарлз, унгарски от раждането, започва да използва в своите програми за начина на именуване на променливи, кото-ING наречен по-късно унгарската система.


Така че, как да го разбирам? Google, която е по-платформа. И вие трябва да направите, когато пишете програма (особено като), за да го постигне.

Хендел как да се определят елементите на РП?
Фактът, че е възможно - това е факт. Той ми отговори NI поддръжка и даде линк към тази страница. Това е същото Четох някъде в лава (за съжаление открих днес вече не могат връзка).


Повтарям - обектите на РП дръжки не! Не ме и Vitekkz88 вярвам - това са думите Rolf Kalbermatter. изяде кучето на тези неща (1. 2):

Както каза Chaos, просто не може да направи това. Всички обекти от панела на предните в LabVIEW са всъщност LabVIEW обекти и абсолютно не на базата на стандартни проверки на Windows. Така че няма Windows HWND, свързани с тях изобщо.

Вие не може да получи HWND от контрол LabVIEW. Те не са реализирани като прозорец дете Windows, но вместо това са изцяло обработени от LabVIEW вътрешно. Единственото нещо, което в LabVIEW, която има дръжка свързания Windows са самите панели.


Ако това не е достатъчно - Обърнете WinSpy или вграден в LV Window Monitor и да видим какво дръжки са върнати.
А NI хвърли просто се позовава на опаковките (и вече остарели) някои WinAPI функции - например, "не го притеснява ни с вашите неясни задачи"

Igor_G пише (а): Не трябва, ако никой няма някакви идеи? Не е наистина най-е в действителност никой не се е опитал?


И защо някой ще направи това може да се наложи? Между другото, ти беше даден съвет:

dadreamer написал (а): и все пак, за да вършат работата, с GUI в vremyakritichnyh съчетания - не е добре.


Въпреки това, все още не сте го виждали. Или не искаше. Отново се опитва да влезе в къщата, не е като другите хора, и през тавана. Колко ли тези, които вече беше. оптимизира компилатор събраха, след промяна на съществуващите за работа с файлове. Напълно фантастично!
Във вашия случай това би било достатъчно, за да направи работата с guyami в отделна нишка и синхронизирани чрез опашката / заявителите. Примери в този форум е пълен. Друг, може би по-екзотично решение би било да се напише цялата GUI в различна среда и поставете библиотека. Тогава щеше да получи независимост от потока на обработка UI поток (DLL reenterentnaya, разбира се). Е, вие искате да запазите чук пирони микроскоп - вашият бизнес.

Свързани статии

Подкрепете проекта - споделете линка, благодаря!