It's difficult to tell what is being asked here. This question is ambiguous, vague, incomplete, overly broad, or rhetorical and cannot be reasonably answered in its current form. For help clarifying this question so that it can be reopened, visit the help center.
Closed 10 years ago.
The VCL does not natively allow forms other than the MainForm to host MDI child forms. This is a hard-coded limitation on Borland's part, not a limitation in Microsoft's MDI architecture. Microsoft allows multiple windows in an application to host MDI children. There is no concept of MainForms in the Win32 API.
I have tried converting the below embarcadro c++ example to embarcadro delphi without success.
I keep encountering the error "no mdi forms are currently active" when creating the mdi child forms.
This c++ sample demonstrates how to allow a non-MDI project to host multiple MDI parent forms, none of which are the VCL's MainForm.
Download with Information (Account required to download)
http://cc.embarcadero.com/item/23574
Direct Download (No account required to download)
http://www.delphibasics.info/MultipleMDIParentFormsInASingleApplication.zip
I would be grateful if someone would convert this sample from embarcadro c++ language to embarcadro delphi language. Thank you.
Quality Central #12006 Hosting MDI child forms in non-MainForm forms has detailed steps in its workaround description for how to add support for that. It does involve patching the VCL sources though, and was posted against Delphi 2005, so some of the steps may have changed. It's also been closed as Won't Do, so if you pursue that approach you'll have to maintain it yourself long-term.
Related
It's difficult to tell what is being asked here. This question is ambiguous, vague, incomplete, overly broad, or rhetorical and cannot be reasonably answered in its current form. For help clarifying this question so that it can be reopened, visit the help center.
Closed 9 years ago.
i have Delphi application and i added service to it , how can i install and start and stop it by Main Form buttons ?
i can do it in separate project service , but my goal is make interface for service to control it .
Thanks
You have to use the Win32 API Service Control functions - CreateService(), OpenService(), StartService(), ControlService(), etc. A service cannot display its own UI while it is running, the UI needs to be run as a separate process. But you can host the Service code and UI code in the same executable if you want to, using command-line parameters to know when to run as a service and when to run as a UI. But that is more of a code management issue. You could just as easily host the two codebases in separate executables instead.
You can't have a visual interface to your service in the same application any longer.
As of Windows Vista and above, services run in a different desktop than the user and can't visually interact with the user. You need to write a separate application that communicates with your service via named pipes, mailslots, or some other form of interprocess communication, or through one of the service control functions available through the Windows API.
It's difficult to tell what is being asked here. This question is ambiguous, vague, incomplete, overly broad, or rhetorical and cannot be reasonably answered in its current form. For help clarifying this question so that it can be reopened, visit the help center.
Closed 10 years ago.
I have searched StackOverlow and googled myself silly, but can't find a solution to this problem.
What I wish to do is be able to preview the contents of a file. I can do this at present for a BMP, JPEG etc. but I'd like to be able to do it for any file that has a default program association. The most likely example is a PDF file, but any file is theoretically possible in this application.
What I had in mind was to:-
Open the file (with ShellExecuteEx?)
Wait for the open to complete
Copy the contents of the first window displayed by the opening program
Save the window to a TBitMap
Close the file/program/window
Display the captured BMP in a TImage as my preview.
I reckon that I can do steps 1 and 6, but the bits in the middle have me beaten :-(
I'm working with Delphi-7
Cheers
Jeff
You can try the Windows Preview Handlers, you can Host a existing Preview Handler in your app and also create your own.
Check these resources.
Hosting Preview Handlers
Hosting Preview Handlers in Windows Applications
Creating Preview Handlers with Delphi
Is there a Preview Handler VCL for Windows 7?
Windows 7 Previews – the Delphi Way
delphi-preview-handler (Delphi Open Source Project)
It's difficult to tell what is being asked here. This question is ambiguous, vague, incomplete, overly broad, or rhetorical and cannot be reasonably answered in its current form. For help clarifying this question so that it can be reopened, visit the help center.
Closed 10 years ago.
I'm new to mvc, and i'm now trying to show a simple gridview which will be loaded from my sql server.
I can't even find the gridview in the toolbox.
i'm using the razor view engine.
example will be appreciated.
Thanks.
You mention mvc and toolbox. Those are incompatible concepts. You don't drag things out of the toolbox in MVC like you do in Web Forms. You type out various fields using html helpers.
While there is, in fact, a WebGrid available (quite a few actually), you would be better suited (at least initially) doing a manual table generation. Once you understand how it works, then you can move on to more advanced uses.
Any good MVC tutorial should have an example, such as MVC Music Store, or Nerd Dinner.
It's difficult to tell what is being asked here. This question is ambiguous, vague, incomplete, overly broad, or rhetorical and cannot be reasonably answered in its current form. For help clarifying this question so that it can be reopened, visit the help center.
Closed 11 years ago.
I already asked a few beginner questions, found some demos, altered them and realize that I might have a lot more questions ...
Should I use Indy 10 or 9 with Delphi 7?
What if my server wants to broadcast something to all the clients?
too many more to list, and I'd rather educate myself, if I can, than continually ask for help
Does anyone know of a book which covers Indy programming in Delphi (preferably D7) ?
Googling for "indy book delphi" returns "Indy in Depth" http://www.atozed.com/indy/book/index.nl.aspx as the first result. The page mentions it hasn't been updated recently, but as you are using Delphi 7 it will probably still be pertinent to you.
Im currently using 9 with Delphi 7. No issue for me so far - mainly work with UDP/TCP servers/clients.
Indy 10 AFAIK has architectually changed under the hood, so definately pick one and stick with it. I have looked into upgrading but it seems it will require a code change for me, but i would normally advise to choose the latest version, since you will have better support.
Check the Indy homepage for more info (note i think its a bit outdated):
http://www.indyproject.org/download/Files/Indy10.html
Here is also an article about the fundamental differences between the two:
http://conferences.embarcadero.com/article/32160
It's difficult to tell what is being asked here. This question is ambiguous, vague, incomplete, overly broad, or rhetorical and cannot be reasonably answered in its current form. For help clarifying this question so that it can be reopened, visit the help center.
Closed 11 years ago.
I'm making a program and I need to use another program's API.
Which then let me pick between their activeX or Delphi.
Wondering which one I should utilize or focus more on.
Not sure if I'm being too broad here.
Edit: I'm more familiar with visual studio if that is of any concern.
Delphi is a programming language. If they're offering ActiveX or Delphi, they're offering you a COM object you can use from any language capable of using it (including Delphi) or a Delphi-specific implementation or interface to the library. Your question is pretty meaningless - "Which shall I take, the apple or the orange?".
If you're programming in Delphi, take the Delphi API; if not, or if you just prefer working with the ActiveX instead, choose it.