[go: up one dir, main page]

CN111045775A - Method for efficiently integrating third-party application program in large-screen visualization system - Google Patents

Method for efficiently integrating third-party application program in large-screen visualization system Download PDF

Info

Publication number
CN111045775A
CN111045775A CN201911258489.1A CN201911258489A CN111045775A CN 111045775 A CN111045775 A CN 111045775A CN 201911258489 A CN201911258489 A CN 201911258489A CN 111045775 A CN111045775 A CN 111045775A
Authority
CN
China
Prior art keywords
party
window
main program
party process
visualization system
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN201911258489.1A
Other languages
Chinese (zh)
Other versions
CN111045775B (en
Inventor
钱苏晋
刘爱军
向茂军
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing E Techstar Co ltd
Original Assignee
Beijing E Techstar Co ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Beijing E Techstar Co ltd filed Critical Beijing E Techstar Co ltd
Priority to CN201911258489.1A priority Critical patent/CN111045775B/en
Publication of CN111045775A publication Critical patent/CN111045775A/en
Application granted granted Critical
Publication of CN111045775B publication Critical patent/CN111045775B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/451Execution arrangements for user interfaces
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0793Remedial or corrective actions
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3003Monitoring arrangements specially adapted to the computing system or computing system component being monitored
    • G06F11/3017Monitoring arrangements specially adapted to the computing system or computing system component being monitored where the computing system is implementing multitasking

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computing Systems (AREA)
  • Quality & Reliability (AREA)
  • Human Computer Interaction (AREA)
  • Mathematical Physics (AREA)
  • User Interface Of Digital Computer (AREA)

Abstract

The invention relates to the technical field of data visualization, and discloses a method for efficiently integrating third-party application programs in a large-screen visualization system. The method comprises the following steps: s1) starting the main program and monitoring the window state of the main program; s2) analyzing the internal process container by using the main program; s3) starting a monitoring thread; s4) capturing a third-party process window; s5) setting the window style of the third-party process window; s6) setting the size of the third-party process window; s7) setting the position of the third-party process window; s8) the successfully grabbed third-party process window is forcibly set as the top setting; s9) sets the explicit-implicit state of the third-party process window to be synchronous with the main program window. The method solves the problem that the main program is blocked or falsely killed due to the fact that the third-party program window is embedded into a large-screen visualization system, does not cause additional influence on the main program window, and has high reliability.

Description

Method for efficiently integrating third-party application program in large-screen visualization system
Technical Field
The invention relates to the technical field of data visualization, in particular to a method for efficiently integrating third-party application programs in a large-screen visualization system.
Background
In large-screen data visualization schemes in various industries, there is often a need to embed a third-party application in a visualization system. For example, in a case of a data visualization display of a certain plate, which is customized with a cool 3D program, a client wants to embed the 3D program into a 2D visualization system to improve the display effect, and for example, an industry wants to use a set of video conference programs of a third party in the visualization system.
In the national patent application specification, CN102915251A discloses a method and device for processing messages by a multi-page browser, the invention includes: creating a host window without operation for each page window of the browser; establishing a parent-child relationship between the host window and the corresponding page window and a parent-child relationship between the host window and the main window of the browser; synchronizing a message generated by the operation on the main window to the host window, and synchronizing the message to the page window by the host window; and isolating the parent-child relationship between the host window and the page window when the condition that the page window is in the false death state is monitored.
The invention simply adopts a parent-child relationship mode to process the multi-page browser message, and in a similar current common third-party program integration scheme, a conventional SetParent method in a Windows API is generally adopted to embed a simple third-party program window, but the SetParent method has the fatal defects: the message loop is blocked at some time, and after a part of third-party software embedding test, the defect is generally represented as the main program jamming and false death.
Disclosure of Invention
The invention aims to provide a method for efficiently integrating third-party application programs in a large-screen visualization system, so that the problem that the main program is blocked or falsely killed when a Windows API (application program interface) SetParent method is adopted to embed a simple third-party program window in the prior art is solved.
In order to achieve the purpose, the technical scheme adopted by the invention is as follows:
a method for efficiently integrating third party applications in a large screen visualization system, comprising the steps of:
s1) starting the main program and monitoring the window state of the main program;
s2) analyzing all internal process containers by using the main program, and respectively starting third-party application programs corresponding to the process containers;
s3), starting a monitoring thread, the monitoring thread is used for monitoring a third party process list;
s4), capturing the third-party process window, taking the successfully captured third-party process window as a third-party process main window, acquiring process information, and adding the process information into a third-party process list;
s5) setting the window style of the third-party process window;
s6) setting the size of the third-party process window;
s7) setting the position of the third-party process window;
s8) the successfully grabbed third-party process window is forcibly set as the top setting;
s9) sets the explicit-implicit state of the third-party process window to be synchronous with the main program window.
Step S4), a logic for capturing the third-party process main window is executed, the present invention can continuously enrich the logic, even self-define the logic, and the purpose is to capture the desired third-party process window.
Further, the main program window state in step S1) includes: size, position and display hidden state of the main program window.
Further, the monitoring of the state of the main program window in step S1) includes the steps of:
s11), judging whether the size of the main program window is changed, if so, executing the step S6), and if not, continuing to monitor the state of the main program window;
s12), judging whether the position of the main program window changes, if so, executing the step S7), and if not, continuing to monitor the state of the main program window;
s13), if yes, step S9) is executed, otherwise, the main program window status is continuously monitored.
Further, in step S2), the main program is used to analyze the internal process containers, each process container correspondingly starts a set third-party process, and multiple process containers are started at the same time.
Further, the step S3) of starting a monitoring thread includes the steps of:
s31) judging whether the size of the third-party process window in the third-party process list changes, if so, executing the step S6), otherwise, repeating the step;
s32) judging whether the position of the third-party process window in the third-party process list changes, if so, executing the step S7), otherwise, repeating the step;
s33) judging whether the display and hiding of the third-party process window in the third-party process list are changed, if so, executing a step S9), otherwise, repeating the step;
s34) judging whether the Z sequence of the third-party process window in the third-party process list changes, if so, executing a step S8), otherwise, repeating the step;
s35) judging whether the style of the third-party process window in the third-party process list changes, if so, executing a step S5), otherwise, repeating the step;
s36) judging whether the three-party window in the third-party process list changes, if so, executing a step S4), otherwise, repeating the step;
s37) judging whether the three-party program in the third-party process list is dead, if not, entering the step S38); if yes, forcibly ending the current third-party process which is deceased in a false mode, and entering the step S2), and independently restarting a process container corresponding to the current third-party process which is deceased in a false mode;
s38) judging whether each process container successfully starts the third-party process, if not, returning to the step S37), and if so, putting the third-party process corresponding to the process container into a three-party process list of the main program.
The Z-order of the windows indicates the position of the windows in the stack of overlapping windows, which is located along an imaginary axis, which is the Z-axis extending outward from the screen. The top window in Z order covers all other windows, and the bottom window in Z order is covered by all other windows. The application sets the window's position in Z-order by placing it behind a given window, or on the top or bottom of the window stack.
Further, the window style in step S35) includes a title, a border, and a taskbar icon.
Further, in step S6), performing scaling calculation according to the size of the layout of the process container in the large-screen visualization system, obtaining a size-scaling calculation result, and setting the size of the third-party process window according to the scaling calculation result.
Further, in step 7), performing proportion calculation according to the coordinate position of the process container in the layout of the large-screen visualization system to obtain a position proportion calculation result, and setting the position of the third-party process window according to the position proportion calculation result.
The invention has the beneficial effects that: and forcibly setting the three-party window to enable the three-party window to float on the main program window of the visual system, and ensuring that the states of the position, the size and the like of the three-party window are synchronous with the main window, thereby achieving 'pseudo' embedding. The problem of third party's program window embedding can lead to the main program card to pause or falsely die in the visual system of big screen is solved, can not cause extra influence to main program window, have high reliability.
Drawings
Fig. 1 is a schematic flow chart according to a first embodiment of the present invention.
Fig. 2 is a schematic process embedding design diagram of a large-screen visualization system according to a first embodiment of the present invention.
Fig. 3 is an effect diagram of a video monitor embedded visualization system for customized development according to a first embodiment of the present invention.
Detailed Description
In order to make the objects, technical solutions and advantages of the present invention more apparent, the present invention is further described in detail below with reference to the accompanying drawings. It should be understood that the detailed description and specific examples, while indicating the invention, are intended for purposes of illustration only and are not intended to limit the scope of the invention.
In a first embodiment, as shown in fig. 1, a method for efficiently integrating a third party application in a large-screen visualization system and a method for efficiently integrating a third party application in a large-screen visualization system are provided, which includes the steps of:
s1) starting the main program, monitoring the window state of the main program, including the steps of:
s11), judging whether the size of the main program window is changed, if so, executing the step S6), and if not, continuing to monitor the state of the main program window;
s12), judging whether the position of the main program window changes, if so, executing the step S7), and if not, continuing to monitor the state of the main program window;
s13), if yes, step S9) is executed, otherwise, the main program window status is continuously monitored.
The main program window state includes: size, position and display hidden state of the main program window.
S2) analyzing all the process containers in the system by using the main program, respectively starting the third-party application programs corresponding to the process containers, starting a set third-party process corresponding to each process container, and starting a plurality of process containers at the same time.
In a large-screen visualization system, the position and size of a process window are set in a process container manner. A process container can be considered to be a process embedded in a large screen visualization system. As shown in FIG. 2, a visualization system may include multiple process containers. The process container is a bridge for the visualization system to communicate with third-party programs.
S3) starting a monitoring thread for monitoring a third party process list, comprising the steps of:
s31) judging whether the size of the third-party process window in the third-party process list changes, if so, executing the step S6), otherwise, repeating the step;
s32) judging whether the position of the third-party process window in the third-party process list changes, if so, executing the step S7), otherwise, repeating the step;
s33) judging whether the display and hiding of the third-party process window in the third-party process list are changed, if so, executing a step S9), otherwise, repeating the step;
s34) judging whether the Z sequence of the third-party process window in the third-party process list changes, if so, executing a step S8), otherwise, repeating the step;
s35) judging whether the style of the third-party process window in the third-party process list changes, if so, executing a step S5), otherwise, repeating the step; the window style includes a title, a border, and a taskbar icon.
S36) judging whether the three-party window in the third-party process list changes, if so, executing a step S4), otherwise, repeating the step;
s37) judging whether the three-party program in the third-party process list is dead, if not, entering the step S38); if yes, forcibly ending the current third-party process which is deceased in a false mode, and entering the step S2), and independently restarting a process container corresponding to the current third-party process which is deceased in a false mode;
s38) judging whether each process container successfully starts the third-party process, if not, returning to the step S37), and if so, putting the third-party process corresponding to the process container into a three-party process list of the main program.
S4), capturing the third-party process window, taking the successfully captured third-party process window as a third-party process main window, acquiring process information, and adding the process information into a third-party process list. The method can continuously enrich the logic and even customize the logic, and aims to capture the desired third-party process window.
S5) setting the window style of the third-party process window;
s6) carrying out proportional calculation according to the size of the process container in the large-screen visualization system to obtain a size proportional calculation result, and setting the size of the third-party process window according to the proportional calculation result.
S7) carrying out proportional calculation according to the coordinate position of the process container in the large-screen visualization system to obtain a position proportional calculation result, and setting the position of the third-party process window according to the position proportional calculation result.
S8) forces the successfully grabbed third party process window to be set to the top.
S9) sets the explicit-implicit state of the third-party process window to be synchronous with the main program window.
In the invention, the characteristics of emphatic display, remote control and independent display area of a large-screen visualization system are utilized to forcibly set the three-party window to enable the three-party window to float on a main program window of the visualization system, and the states of the position, the size and the like of the three-party window are ensured to be synchronous with the main window, thereby achieving 'pseudo' embedding. As shown in fig. 3, the invention solves the problem that the embedding of a third-party program window into a large-screen visualization system causes the jamming or the false death of a main program, does not cause additional influence on the main program window, and has high reliability. In the application of actual projects, the invention can successfully embed IE, Google browser, PPT, U3D programs and other various third-party programs, and can complete the visual display of a plurality of different industries.
By adopting the technical scheme disclosed by the invention, the following beneficial effects are obtained:
according to the invention, the characteristics of emphatic display, remote control and independent display area of the large-screen visualization system are utilized, the forced top setting is carried out on the three-party window, so that the three-party window floats on the main program window of the visualization system, and the states of the position, the size and the like of the three-party window are ensured to be synchronous with the main window, thereby achieving 'pseudo' embedding. The problem of third party's program window embedding can lead to the main program card to pause or falsely die in the visual system of big screen is solved, can not cause extra influence to main program window, have high reliability.
The foregoing is only a preferred embodiment of the present invention, and it should be noted that it will be apparent to those skilled in the art that various modifications and improvements can be made without departing from the principle of the present invention, and such modifications and improvements should also be considered within the scope of the present invention.

Claims (8)

1. A method for efficiently integrating third party applications in a large screen visualization system, comprising the steps of:
s1) starting the main program and monitoring the window state of the main program;
s2) analyzing all internal process containers by using the main program, and respectively starting third-party application programs corresponding to the process containers;
s3), starting a monitoring thread, the monitoring thread is used for monitoring a third party process list;
s4), capturing a third-party process window, taking the successfully captured third-party process window as a third-party process main window, acquiring process information, and adding the process information into a third-party process list;
s5) setting the window style of the third-party process window;
s6) setting the size of the third-party process window;
s7) setting the position of the third-party process window;
s8) the successfully grabbed third-party process window is forcibly set as the top setting;
s9) sets the explicit-implicit state of the third-party process window to be synchronous with the main program window.
2. The method for efficiently integrating third party applications in large screen visualization system according to claim 1, wherein the main program window state in step S1) includes: size, position and display hidden state of the main program window.
3. The method for efficiently integrating the third party application program in the large screen visualization system according to claim 1 or 2, wherein the monitoring of the state of the main program window in step S1) comprises the steps of:
s11), judging whether the size of the main program window is changed, if so, executing the step S6), and if not, continuing to monitor the state of the main program window;
s12), judging whether the position of the main program window changes, if so, executing the step S7), and if not, continuing to monitor the state of the main program window;
s13), if yes, step S9) is executed, otherwise, the main program window status is continuously monitored.
4. The method for efficiently integrating third-party applications in a large-screen visualization system according to claim 3, wherein in step S2), all internal process containers are parsed by the main program, each process container correspondingly starts a set third-party process, and a plurality of process containers start simultaneously.
5. The method for efficiently integrating third party applications in large screen visualization system as claimed in claim 1 or 4, wherein the step S3) of starting a monitoring thread comprises the steps of:
s31) judging whether the size of the third-party process window in the third-party process list changes, if so, executing the step S6), otherwise, repeating the step;
s32) judging whether the position of the third-party process window in the third-party process list changes, if so, executing the step S7), otherwise, repeating the step;
s33) judging whether the display and hiding of the third-party process window in the third-party process list are changed, if so, executing a step S9), otherwise, repeating the step;
s34) judging whether the Z sequence of the third-party process window in the third-party process list changes, if so, executing a step S8), otherwise, repeating the step;
s35) judging whether the style of the third-party process window in the third-party process list changes, if so, executing a step S5), otherwise, repeating the step;
s36) judging whether the three-party window in the third-party process list changes, if so, executing a step S4), otherwise, repeating the step;
s37) judging whether the three-party program in the third-party process list is dead, if not, entering the step S38); if yes, forcibly ending the current third-party process which is deceased in a false mode, and entering the step S2), and independently restarting a process container corresponding to the current third-party process which is deceased in a false mode;
s38) judging whether each process container successfully starts the third-party process, if not, returning to the step S37), and if so, putting the third-party process corresponding to the process container into a three-party process list of the main program.
6. The method for efficiently integrating third party applications in a large screen visualization system as recited in claim 5, wherein the window styles in step S35) include a title, a border and a taskbar icon.
7. The method for efficiently integrating third party applications in a large screen visualization system as claimed in claim 6, wherein in step S6), the process container is scaled according to the size of its layout in the large screen visualization system to obtain the result of scaling the size, and the size of the third party process window is set according to the result of scaling.
8. The method for efficiently integrating the third party application program in the large-screen visualization system according to claim 6 or 7, wherein in the step 7), the position proportion calculation result is obtained by performing proportion calculation according to the coordinate position of the process container in the large-screen visualization system, and the position of the third party process window is set according to the position proportion calculation result.
CN201911258489.1A 2019-12-10 2019-12-10 Method for efficiently integrating third party application program in large screen visualization system Active CN111045775B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201911258489.1A CN111045775B (en) 2019-12-10 2019-12-10 Method for efficiently integrating third party application program in large screen visualization system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201911258489.1A CN111045775B (en) 2019-12-10 2019-12-10 Method for efficiently integrating third party application program in large screen visualization system

Publications (2)

Publication Number Publication Date
CN111045775A true CN111045775A (en) 2020-04-21
CN111045775B CN111045775B (en) 2023-10-27

Family

ID=70235391

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201911258489.1A Active CN111045775B (en) 2019-12-10 2019-12-10 Method for efficiently integrating third party application program in large screen visualization system

Country Status (1)

Country Link
CN (1) CN111045775B (en)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101609470A (en) * 2009-07-02 2009-12-23 腾讯科技(深圳)有限公司 A kind of preventing apparent death of multi-page browser method and device
CN103197842A (en) * 2013-04-15 2013-07-10 广州博冠信息科技有限公司 Method and device for controlling application program windows
WO2017071599A1 (en) * 2015-10-30 2017-05-04 努比亚技术有限公司 Split-screen size real-time adjustment method, split-screen device and computer storage medium
CN108776572A (en) * 2018-05-28 2018-11-09 北京小米移动软件有限公司 Window treatments method and device
CN109491559A (en) * 2017-09-13 2019-03-19 赖鸿春 The method and system of third party's web browser are used in a kind of full-screen program

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101609470A (en) * 2009-07-02 2009-12-23 腾讯科技(深圳)有限公司 A kind of preventing apparent death of multi-page browser method and device
CN103197842A (en) * 2013-04-15 2013-07-10 广州博冠信息科技有限公司 Method and device for controlling application program windows
WO2017071599A1 (en) * 2015-10-30 2017-05-04 努比亚技术有限公司 Split-screen size real-time adjustment method, split-screen device and computer storage medium
CN109491559A (en) * 2017-09-13 2019-03-19 赖鸿春 The method and system of third party's web browser are used in a kind of full-screen program
CN108776572A (en) * 2018-05-28 2018-11-09 北京小米移动软件有限公司 Window treatments method and device

Also Published As

Publication number Publication date
CN111045775B (en) 2023-10-27

Similar Documents

Publication Publication Date Title
EP2763034B1 (en) Method and device for image-capturing application screen for use in mobile terminal
CN102662839B (en) Testing method and device for software interface state change time
CN104391797B (en) The recognition methods of GUI controls and device
TWI509409B (en) Methods and systems for viewing log data recorded during execution of a program
CN102830958B (en) A kind of method and system for obtaining interface control information
CN103502936B (en) Automated systems and methods based on image
US10007963B2 (en) Context-based provision of screenshot modifications
US10810113B2 (en) Method and apparatus for creating reference images for an automated test of software with a graphical user interface
CN115145778B (en) Method and device for analyzing rendering result of display card and storage medium
EP2871560B1 (en) Image processing method and apparatus
CN104571802B (en) A kind of information processing method and electronic equipment
CN104881273B (en) A kind of analysis method and terminal device of webpage rendering
US9798437B2 (en) Information processing method and electronic device
US20140176394A1 (en) Screen output system
CN103116442B (en) Terminal interface display method and device
CN111127469A (en) Thumbnail display method, device, storage medium and terminal
CN112612690B (en) User interface information processing method and device, electronic equipment and storage medium
CN111045775A (en) Method for efficiently integrating third-party application program in large-screen visualization system
CN109195021B (en) Screenshot sharing method and device
CN104516819B (en) The method of testing and device of the interface state change time of software
CN117421242A (en) Application detection method, apparatus, computer device and computer readable storage medium
CN113645484B (en) Data visualization accelerated rendering method based on graphic processor
CN112559110B (en) Window penetration method of magnifying glass based on windows system
CN116823608A (en) Page image stitching method and device, computer equipment and storage medium
CN106648634A (en) Screen shot method and screen shot device

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant