devxlogo

The Latest

Customize the Index Server Results Page

Don’t like that plain search results page that comes up when using index server, when the rest of your site looks so nice? The results page is a file with

Performance of typeid vs. dynamic_cast<>

As far as design is concerned, dynamic_cast should be preferred to typeid because the former enables more flexibility and extensibility. Notwithstanding that, the runtime overhead of typeid can be less

Delphi MDI Form

Question: Imagine an MDI application where the MDIFrame has many MDIChild forms?each one derived from TBlueForm class. The TBlueForm class has a public method named ChangeColor which only makes the

Database Reporting

Question: What is the best way to do a database report?in other words print a database? I have been having serious trouble with QuickRep. I specify the dataset but still

Saving New Database at Run Time to a New File

Question: How do I save my new database at run time to a new file? I’m using a paradox database?DBGrid, and a table and data source control. Answer: Use TTable’s

Displaying Changes to a Record

Question: I have set up a paradox table for multiple user access using the Netdir method, but when I post a record other users cannot see the changes until the

Resources for Delphi 32-bit Programming

Question: Can you recommend resources to learn how to tackle 16-bit and 32-bit programming in Delphi? Answer: A number of good books that I’ve read include: All of Charlie Calvert’s

Using Stored Procedures Boosts Performance in ASP

Active Server Pages that utilize databases like SQL Server are no different than conventional programs in that they will experience a performance boost when you use stored procedures instead of

Use the Continuation Marker Before a Line Break

C++ statements can be broken into more than a single line. However, you cannot break literal strings such as printf() format string, macros, or literals. When you need a long

Lingering on Sockets

Java’s Socket class gives you control over how a socket handles queued data when it closes. This linger-on-close option allows you to dictate whether you want the socket to send

Quirks of the Dir$ Function

If you use the intrinsic VB Dir$ function to check for the existence of a certain file, then subsequently try to remove the directory where the file is found using

Keep Menu Items in Sync With Enabled Property

How many times have you had to control the same processes with both command buttons and corresponding menus? I expect you’d say “many,” which means you’ve had to set the

Determine Which Scrollbars are Visible

Sometimes, it’s useful to know whether a control is displaying vertical scrollbars, horizontal scrollbars, both horizontal and vertical, or no scrollbars at all. For instance, when determining the amount of

View Selected Text From the Beginning

Most professional and commercial applications exhibit a specific behavior when using dialog boxes with text fields: When you tab to an input field, or hot-key (using some ALT-key combination), you

Enumerate Your Errors

To keep a list of available error codes in your components, declare a private enumeration: Private Enum Errors InvalidUserID = vbObjectError + 513 InvalidPassword SearchNotFoundEnd Enum Setting the first value

Allow Multiple Winsock Connections to One Server

The Winsock control allows you to make only one connection between two computers. However, you can create multiple connections (many computers to one) by creating multiple instances of the Winsock

Using a Non-Databound Grid

Question: I am creating an Active Server Pages (ASP) application using Visual InterDev and I need to display data in a non-bound data grid. I have read that it is

Quick Timer Control Replacement

Timer controls can be practical when you need to add a small delay in program execution. However, if you need the delay in a class module (instead of on a

Locating the Results Page in Index Server

When you use Index Server and Internet Information Server (IIS), you get a moderately useful search process built into your Web application. However, it isn’t readily apparent where that data

A vector<Base> Should Not Store Derived Objects

A vector stores its elements contiguously in memory (although this is not a requirement in the Standard, in practice, all implementations use contiguous storage). Consequently, each element in a vector

Create Hyperlinks in Perl Using a Regular Expression

When outputting HTML, it’s often handy to be able to turn any URL, such as http://www.whatever.com, into a hyperlink, such as http://www.whatever.com. You can do this with a regular expression

Disable and Enable Trace Output in Your Program

The prominent mechanism used to debug a Java application is to write string messages to System.out. However, this method clutters up the output of the program. In order to turn

The Minimum Requirements for STL Containment

Any object that defines the copy constructor, default constructor, assignment operator and destructor as public members (either explicitly or implicitly) can be stored in STL containers. If you do not

Center Your Windows

By default, instances of Window subclasses such as Frame and Dialog appear at the upper-left corner of the screen when made visible. For a more user-friendly interface, you can center

Draw Frames on Form Without Control

The DrawEdge API provides a convenient way to draw a number of interesting effects. You can change the EDGE_ constants to give different border effects; the BF_ constants determine which

Put Non-Breaking Spaces in Empty HTML Table Cells

The tables that you design so carefully could end up looking odd in Internet Explorer or Netscape Navigator. The trouble is that browsers treat empty table cells differently. For instance,

Running Applications From Your Own

Question: What code do I use for Delphi to run a program and use command line parameters inputted by the user? Answer: This code will allow you to launch other

Exception Handling Misuses

Exceptions can be used as an alternative control structure in addition to for-loops or while-blocks. For example, you can use exceptions to implement a simple application that prompts the user