Solved

Main window without 3d boder

Posted on 1998-11-25
13
349 Views
Last Modified: 2013-12-03
How to create a Main Window (using createWindow) which has
window caption and menu, without the 3d boder. (ie) like
WS_POPUP.

Thans in advance.
0
Comment
Question by:kalai26
  • 6
  • 3
  • 2
  • +1
13 Comments
 
LVL 2

Expert Comment

by:wyy_cq
ID: 1416329
you may try thin border sytle.

0
 
LVL 22

Expert Comment

by:nietod
ID: 1416330
There is no thin border style.  There is a thick border style, WS_THICKFRAME, don't specify that to begin with.  Also don't specify the WS_DLGFRAME style.  Make sure you don't specify any styles that contain these styles "inside" them. like WS_OVERLAPPEDWINDOW.  Do specify the WS_BORDER style.
0
 
LVL 22

Expert Comment

by:nietod
ID: 1416331
What is happening with this question?
0
Courses: Start Training Online With Pros, Today

Brush up on the basics or master the advanced techniques required to earn essential industry certifications, with Courses. Enroll in a course and start learning today. Training topics range from Android App Dev to the Xen Virtualization Platform.

 

Author Comment

by:kalai26
ID: 1416332
Regarding wyy_cq's proposed answer, there is no thin boder....

Regarding "nietod" comments, it is very close to what I want
but it is not removing the boder completely.

Here are more details and calling sequence in my program:

    WinMain()
    RegisterWindowEx()
    CreateWindowEx()
 
and I am not using MFC. I have used many combinations but I am
still seeing a thin boder!!

Is anyone know how to get-ride of the boder, using Win32 porgramming.
0
 
LVL 22

Expert Comment

by:nietod
ID: 1416333
By default, windows don't have a bordert.  You are adding a border, probably by specifying the WS_BORDER style or another style that includes that style.  Make sure you are not specifying that style.  If you can't figure that out, post the code where you create the window.
0
 
LVL 2

Expert Comment

by:wyy_cq
ID: 1416334
i mean WS_THICKFRAME .
i write a dialog base demo, and i find that even if i select the thin border style , the dialog has a 3d border.
perhaps win95 cancel the style.

you may deal with WM_NCPAINT ,and paint the simple line on the edge of the window if you could not find a better idea.
0
 
LVL 2

Expert Comment

by:wyy_cq
ID: 1416335
you may try to modify the window's style after creation.

you can delete the style and exStyle which may generate a 3d border.
setWindowLong(...);
0
 
LVL 22

Expert Comment

by:nietod
ID: 1416336
I'm confused, what is the goal here?  To create a window with no border or to create one with a thin border?
0
 

Author Comment

by:kalai26
ID: 1416337
Create a window with NO BODER.
0
 
LVL 22

Expert Comment

by:nietod
ID: 1416338
Then just don't specify any border styles.  If that isn't working, post the code that you use to create the window so we can ofter suggestions.
0
 
LVL 1

Accepted Solution

by:
yuryz earned 100 total points
ID: 1416339
Try this:
1. react on WM_CREATE message sent to your main window
2. add this code:

       DWORD dwStyle = GetWindowLong( GetSafeHwnd(),WL_EXSTYLE );
      dwStyle &= ~( WS_EX_WINDOWEDGE | WS_EX_CLIENTEDGE );
      SetWindowLong( GetSafeHwnd(), GWL_EXSTYLE, dwStyle );
3. resize window to the size it was last time started, or any specific size you need.

0
 
LVL 22

Expert Comment

by:nietod
ID: 1416340
yuryz, why bother doing all that?  just specify the styles you want when you create the window.  The problem is that kalai26 is using the wrong styles.

Also you can assume that if there has been no response in the last 4 weeks, that kalai26 is no longer looking for an answer.
0
 
LVL 1

Expert Comment

by:yuryz
ID: 1416341
hah ! try it yourself ! seems like styles being always added if not by MFC, then by windows itself...
0

Featured Post

Gigs: Get Your Project Delivered by an Expert

Select from freelancers specializing in everything from database administration to programming, who have proven themselves as experts in their field. Hire the best, collaborate easily, pay securely and get projects done right.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Suggested Solutions

This tutorial is about how to put some of your C++ program's functionality into a standard DLL, and how to make working with the EXE and the DLL simple and seamless.   We'll be using Microsoft Visual Studio 2008 and we will cut out the noise; that i…
For a while now I'v been searching for a circular progress control, much like the one you get when first starting your Silverlight application. I found a couple that were written in WPF and there were a few written in Silverlight, but all appeared o…
This is Part 3 in a 3-part series on Experts Exchange to discuss error handling in VBA code written for Excel. Part 1 of this series discussed basic error handling code using VBA. http://www.experts-exchange.com/videos/1478/Excel-Error-Handlin…
Although Jacob Bernoulli (1654-1705) has been credited as the creator of "Binomial Distribution Table", Gottfried Leibniz (1646-1716) did his dissertation on the subject in 1666; Leibniz you may recall is the co-inventor of "Calculus" and beat Isaac…

776 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question