Top-Themen

Aktuelle Themen (A bis Z)

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit

gelöst Runde, Sternformige Fenster erstellen

Mitglied: 31640

31640 (Level 1)

07.07.2006, aktualisiert 23.10.2012, 7384 Aufrufe, 4 Kommentare

Erstellen von Fenster in verschieden Formen

Um ein rundes Fenster zu erstellen muss man die Funktion
01.
HRGN R; 
02.
R=Create***Rgn(i,j,i+1,j+1);	 
03.
SetWindowRgn(Handle, R, TRUE); 
04.
Statt *** setzt man name des Figurus(Ellipse für Kreis)
so
weist aber jemand was an dieser Funkton
01.
HRGN R1, R2; 
02.
for(int i=0;i<255;i++){ 
03.
	for(int j=0;j<255;j++){ 
04.
		if (!(picture->canvas->pixels[i][j]==clRed)){ 
05.
			R1=CreateRestangleRgn(i,j,i+1,j+1);	 
06.
		}	 
07.
		CombineRgn(R2,R2,R1,RGN_OR); 
08.
09.
10.
SetWindowRgn(Handle, R1, TRUE);
falsch ist?
werde sehr dankbar für eine Antwort.

Vprimachenko
Mitglied: filippg
07.07.2006 um 20:26 Uhr
Ich weiss nicht, ob das der Fehler ist, aber ich keine Figur, die sich "Restangle" nennt ( R1=CreateRestangleRgn(i,j,i+1,j+1); ).

Filipp
Bitte warten ..
Mitglied: 31640
07.07.2006, aktualisiert 23.10.2012
ja da hast du recht hab das jetzt umgeschrieben als

01.
#include <vcl.h> 
02.
#pragma hdrstop 
03.
 
04.
#include "Unit1.h" 
05.
//--------------------------------------------------------------------------- 
06.
#pragma package(smart_init) 
07.
#pragma resource "*.dfm" 
08.
TForm1 *Form1; 
09.
//--------------------------------------------------------------------------- 
10.
__fastcall TForm1::TForm1(TComponent* Owner) 
11.
        : TForm(Owner) 
12.
13.
14.
//--------------------------------------------------------------------------- 
15.
void __fastcall TForm1::FormCreate(TObject *Sender) 
16.
17.
Application->MessageBox("1","1",MB_OK); 
18.
HRGN R1, R2; 
19.
for(int i=0;i<255;i++){ 
20.
	for(int j=0;j<255;j++){ 
21.
		if (!(Image1->Canvas->Pixels[i][j] == clRed)){ 
22.
			R1=CreateRectRgn(i,j,i+1,j+1); 
23.
		        CombineRgn(R2,R2,R1,RGN_OR); 
24.
                       // Application->MessageBox(i,j,MB_OK); 
25.
26.
 
27.
28.
29.
Application->MessageBox("2","2",MB_OK); 
30.
SetWindowRgn(Form1->Handle, R2, true); 
31.
32.
//---------------------------------------------------------------------------
Hillft aber nicht ...
Bitte warten ..
Mitglied: 31640
10.07.2006, aktualisiert 23.10.2012
habe das fehler gefunden:
01.
 
02.
#include <vcl.h> 
03.
#pragma hdrstop 
04.
 
05.
#include "Unit1.h" 
06.
//--------------------------------------------------------------------------- 
07.
#pragma package(smart_init) 
08.
#pragma resource "*.dfm" 
09.
TForm1 *Form1; 
10.
//--------------------------------------------------------------------------- 
11.
__fastcall TForm1::TForm1(TComponent* Owner) 
12.
        : TForm(Owner) 
13.
14.
15.
//--------------------------------------------------------------------------- 
16.
void __fastcall TForm1::FormCreate(TObject *Sender) 
17.
18.
Application->MessageBox("1","1",MB_OK); 
19.
HRGN R1, R2; 
20.
R2=CreateRectRgn(0,0,1,1);    //erste RGN erstellen 
21.
for(int i=0;i<255;i++){ 
22.
	for(int j=0;j<255;j++){ 
23.
		if (!(Image1->Canvas->Pixels[i][j] == clRed)){ 
24.
			R1=CreateRectRgn(i,j,i+1,j+1); 
25.
		        CombineRgn(R2,R2,R1,RGN_OR); 
26.
                       // Application->MessageBox(i,j,MB_OK); 
27.
28.
 
29.
30.
31.
R1=CreateRectRgn(0,0,1,1);           //Erste RGN nochmal erstellen 
32.
CombineRgn(R2,R2,R1,RGN_DIFF); //wieder rausnehmen 
33.
Application->MessageBox("2","2",MB_OK); 
34.
SetWindowRgn(Form1->Handle, R2, true); 
35.
36.
//---------------------------------------------------------------------------
Man kann scheinbar nicht NULL mit RGN zusmmensetzen (funktion CombineRgn) also benutz ich son Umweg
Bitte warten ..
Mitglied: 31640
18.07.2006 um 09:53 Uhr
jetzt gibt´s ein Tuto dafür(mit Bild)!
Bitte warten ..
Ähnliche Inhalte
VB for Applications
Popup Fenster erstellen
gelöst Frage von TripleFloVB for Applications19 Kommentare

Hallo zusammen, Ich hätte da mal eine Frage. Ich bin kein Spezialist in Sachen programmieren und würde dennoch gerne ...

Windows 8
Runden in Excell
Frage von KRUBINWindows 82 Kommentare

In Excell runde ich eine Zahl mit der Formel RUNDEN(A1*B1;1). dann erscheint die gerundete Zahl. in einem Serienbrief verwende ...

C und C++

Microsoft Blend C-sharp Informationen Fenster erstellen?

gelöst Frage von grillinator95C und C++11 Kommentare

Wie kann man in Microsoft Blend ein Informationenfenster (Datagrid) erstellen das alle Fehler, Informationen und Warnungen anzeigt? Bezüglich Microsoft ...

VB for Applications

Probleme mit Runden in VBA

gelöst Frage von 94451VB for Applications1 Kommentar

Hallo Leute, ich habe in Excel in einer Zelle 11.11.11.11 stehen zwar könnte der Punkt als "Trennzeichen" angesehen werden, ...

Neue Wissensbeiträge
Ausbildung

Linux-Ausstieg in Niedersachsen - Windows statt Bugfix

Information von StefanKittel vor 2 TagenAusbildung35 Kommentare

Sind ja nur Steuergelder

Speicherkarten

Neuer Speicherkartentyp - zunächst nur für Huawei-Smartphones (künftig auch für Notebooks u. Tablets?)

Tipp von VGem-e vor 4 TagenSpeicherkarten5 Kommentare

Servus, als ob das "Chaos" i.S. Speicherkarten noch nicht groß genug wäre?! Evtl. kommt dieser neue Kartentyp bald auch ...

Sicherheit

Diverse D-Link-Router durch drei Schwachstellen kompromittierbar

Information von kgborn vor 4 TagenSicherheit1 Kommentar

Hat jemand D-Link-Router in Verwendung? Einige Modelle sind sicherheitstechnisch offen wie ein Scheunentor. Äußerst unschöne Sache, aber nichts neues ...

Hardware

100.000 Mikrotik-Router ungefragt von Hacker abgesichert

Information von 7Gizmo7 vor 5 TagenHardware4 Kommentare

Hallo zusammen, da hier ja öfters mal von Mikrotik gesprochen wird. Trotz Updates klafft eine Sicherheitslücke in Hundertausenden Mikrotik-Routern. ...

Heiß diskutierte Inhalte
Windows Userverwaltung
Passwortwechsel Zeitpunkt festlegen
Frage von Looser27Windows Userverwaltung27 Kommentare

Guten Morgen liebe Kolleginnen und Kollegen, da es eine Userin in meinem Urlaub geschafft hat, sich vom AD vollständig ...

Windows Server
Probleme im AD am Außenstandort
gelöst Frage von emeriksWindows Server19 Kommentare

Hi, wir haben ein Problem mit AD und GPO am Außenstandort und ich stehe momentan mächtig auf dem Schlauch. ...

Switche und Hubs
POE-Switche
gelöst Frage von MiStSwitche und Hubs13 Kommentare

Guten Morgen, ich überlege ob ich in unserem Netzwerk die aktuellen Switche (D-LINK DGS-1210-28) durch PoE-Switche ersetzen soll. Der ...

Windows Server
DNS - Bedingte Weiterleitung
gelöst Frage von m8ichaelWindows Server11 Kommentare

Guten Tag zusammen, ich stehe gerade bzgl. einer bedingten DNS-Weiterleitung etwas auf dem Schlauch: Ich möchte, dass für bestimmte ...